IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème avec les noms de mes classeurs


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2017
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2017
    Messages : 39
    Points : 25
    Points
    25
    Par défaut Problème avec les noms de mes classeurs
    Bonjour,
    Pour simplifier mon programme, j'ai ajouté la ligne suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set monClasseur = Application.Workbooks.Item("Classeur_traitement.xlsm")
    J'utilise cette ligne afin de pouvoir écrire la formule suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set sheetTOcreate = monClasseur.Worksheets.Add(After:=monClasseur.Worksheets.Item(monClasseur.Worksheets.Count))
    Cependant le problème est que la macro où est contenu cette ligne ne fonctionne plus dès que je change le nom du classeur. (Ce que je comprend très bien)
    Comment serait-il possible de faire pour éviter d'avoir ce problème et pour quand même pouvoir effectuer la 2ème ligne de code?

    Merci d'avance de votre aide !

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut
    Bonjour !

    Clair comme une nuit d'orage sous une pluie de cendres volcaniques !

    Dans le cas où les feuilles sont situées dans le classeur contenant le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Dim Ws As Worksheet
        With ThisWorkbook.Worksheets:  Set Ws = .Add(, .Item(.Count)):  End With
    ___________________________________________________________________________________________________________

          Merci de cliquer sur en bas à droite de chaque message ayant aidé puis sur pour clore cette discussion …

    ___________________________________________________________________________________________________________
    Je suis Paris, Egypte, Stockholm, London, Istanbul, Berlin, Nice, Bruxelles, Charlie, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2017
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2017
    Messages : 39
    Points : 25
    Points
    25
    Par défaut
    Bonjour, merci de ta réponse mais cela ne marche pas chez moi.
    Le problème est que je veux que cette feuille qui a été créée change de nom et que la création de feuille soit répétée à l'aide d'une boucle for :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim a
    dim i
    a=1
    Set monClasseur = Application.Workbooks.Item("traitement.xlsm")
    Set Feuille_tableau = monClasseur.Worksheets.Item("Données_tableau")
    For i = 1 To nb_ligne Step 1 'boucle pour créer autant de feuille qu'il y a de ligne dans le tableau
       Set sheetTOcreate = monClasseur.Worksheets.Add(After:=monClasseur.Worksheets.Item(monClasseur.Worksheets.Count)) 'création de la feuille
      sheetTOcreate.Name = "Image_" & a 'changement de nom
    Feuille_tableau.Rows(1).Copy Destination:=sheetTOcreate.Cells(1, 1) 'ligne qui copie la ligne du tableau dans la feuille créée.
    Next
    Je n'ai pas réussi à changer cela par ce que tu m'as proposé.
    Merci de ton aide.

  4. #4
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut




    Ligne de code n°7 :  quelle est donc la valeur de la variable nb_ligne ?
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

Discussions similaires

  1. [SP-2007] Liaison avec infopath, problème avec les noms de variables
    Par ludojojo dans le forum SharePoint
    Réponses: 3
    Dernier message: 27/04/2010, 17h12
  2. Problème avec les évènement de mes controle
    Par napegadie dans le forum VB.NET
    Réponses: 5
    Dernier message: 17/08/2007, 13h41
  3. [PHP-JS] Problème avec les noms avec apostrophes
    Par cyberdevelopment dans le forum Langage
    Réponses: 10
    Dernier message: 07/08/2006, 15h35
  4. [MySQL] Problème avec les noms avec espaces
    Par cyberdevelopment dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 07/08/2006, 14h16
  5. problème avec les noms de variables
    Par mederic dans le forum C
    Réponses: 3
    Dernier message: 08/05/2006, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo