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

Excel Discussion :

Mise en variable du nom de la feuille


Sujet :

Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2014
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2014
    Messages : 319
    Points : 158
    Points
    158
    Par défaut Mise en variable du nom de la feuille
    Bonjour

    Je cherche a faire une requete en mettant en variable le nom de feuille


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Sub noms()
    Dim x As Range
    Dim toto As String
    Dim trav1, trav2 As Worksheet
    trav1 = Worksheets("TEMPO").Name
    trav2 = Worksheets("A VENIR").Name
     
     
    For i = 1 To 2
    Sheets("trav" & i).Select
    toto = WorksheetFunction.CountA(Range("D1:D100000"))
     
    For Each x In Sheets("trav" & i ).Range("A2:A" & toto)
        x.Value = Trim(x.Value)
    Next x
     
    With Sheets("trav" & i ).Range("A2:I" & toto)
             .Borders.Weight = 2        ' bordure  trait simple
             .Font.Size = 8                    ' Taille de la police
             .Font.Name = "Calibri"    'police de caractere
        End With
     
    Next i
     
     
    End Sub
    Mon script bloque sur le nom de la feuille pouvez vous m'aider ?

  2. #2
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut
    Bonjour laurent27530,

    la propriété Sheets("Feuille").name est de type String.

    essaye avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim toto As String
    Dim trav1, trav2 As String
    trav1 = Worksheets("TEMPO").Name
    trav2 = Worksheets("A VENIR").Name
    Antony
    Antony

    Mieux vaut ne rien dire et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.
    Gustave Parking


    Si le post vous est utile un petit fait toujours plaisir et pensez à passer en

    Et surtout -> Balise CODE

  3. #3
    Membre habitué
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2014
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2014
    Messages : 319
    Points : 158
    Points
    158
    Par défaut
    Merci maintenant j'ai une erreur 9 sur la ligne 10 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("trav" & i).Select

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 729
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 729
    Points : 28 555
    Points
    28 555
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Tu ne peux pas traiter le nom des variables nommées Trav1 et Trav2 comme on gère des noms de feuilles.
    Si tu souhaites traiter des variables contenant des valeurs dans une boucle, utilise des variables tableaux
    A lire Utiliser les variables tableaux en VBA Excel et pour bien comprendre le concept des variables tableaux, à lire sans modération Conceptualisation des variables tableau en VBA et Application à l'optimisation du code sous Excel
    Petit exemple rapide
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub t()
     Dim trav(1 To 2) As String, s As Byte
     trav(1) = "TEMPO": trav(2) = "A VENIR"
     For s = 1 To 2
      MsgBox "Ok"
      ThisWorkbook.Worksheets(trav(s)).Select
     Next
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  5. #5
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut
    Si tu veux ne faire que des actions sur les feuilles TEMPO et A VENIR, je te conseil un code du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub test()
     
    Dim wb As Workbook
    Dim sh As Worksheet
     
    Set wb = ThisWorkbook
     
    For Each sh In wb.Worksheets
       If sh.Name <> "TEMPO" And sh.Name <> "A VENIR" Then
          'Rien
       Else
          'Ton code
       End If
    Next
     
    End Sub
    En espérant t'aider

    Antony
    Antony

    Mieux vaut ne rien dire et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.
    Gustave Parking


    Si le post vous est utile un petit fait toujours plaisir et pensez à passer en

    Et surtout -> Balise CODE

  6. #6
    Membre habitué
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Février 2014
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2014
    Messages : 319
    Points : 158
    Points
    158
    Par défaut
    Les deux solutions sont intéressantes et instructives pour le cas actuel -- Philippe réponds mieux a mes attentes.


    Je vous remercie tous les 2

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] le nom d'une feuille dans une variable
    Par popzelda dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 27/10/2009, 17h21
  2. Recherche nom d'une feuille Excel par rapport à une variable
    Par depi67 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/10/2008, 09h43
  3. Probleme variable representant nom feuille
    Par bebe1310 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 20/06/2008, 20h02
  4. formule avec nom de la feuille variable
    Par DIDIDIDA dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/04/2008, 14h59
  5. Nom de variable à la place du nom d'une feuille de calcul
    Par Stargate SG1 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/12/2007, 10h37

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