VBA : Appliquer un même code sur plusieurs feuilles Excel

Résolu
LAASRI.reda Messages postés 26 Statut Membre -  
LAASRI.reda Messages postés 26 Statut Membre -
salut tout le monde!

J'ai un code qui marche bien pour un de mes onglets nommé "sheet1", je souhaite appliquer le même code pour mes autres onglets, en sachant que la seule chose à remplacer dans les codes sera le nom de l'onglet(ce nom intervient quand je Set la worksheet mais aussi dans le cadre de concaténations...)

Est ce qu'on peut définir ce Nom comme variable qui prendra les noms des onglets les uns après les autres....??

Merci pour l'aide

2 réponses

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 772
     
    Bonjour,

    Pour boucler sur toutes les feuilles d'un même classeur :

    Dim Feuille As Worksheet
    
    For Each Feuille In ThisWorkbook.Worksheets
        'Ta procédure ici
        'par exemple :
        Feuille.Range("A1") = Feuille.Name 'place le nom de la feuille dans la cellule A1
    Next Feuille


    Cordialement,
    Franck
    2
    1. LAASRI.reda Messages postés 26 Statut Membre
       
      Merci pour le code ! mais ça donne une erreur d'exécution : 1004 --> la méthode 'Range' de l'objet '_woorksheet 'a échoué
      je m'excuse autre fois pour le dérangement
      0
    2. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 772
       
      Le code donné n'était qu'un exemple bidon...
      Retente en plaçant dans un bloc With :
      Dim Feuille As Worksheet
      
      For Each Feuille In ThisWorkbook.Worksheets
          With Feuille
          'bien respecter le point avant Range.......
              .Range("A1") = Feuille.Name 'place le nom de la feuille dans la cellule A1
          End With
      Next Feuille
      0
  2. LAASRI.reda Messages postés 26 Statut Membre
     
    merci infiniment pour vos efforts , vous trouvez içi mon code , priere de me placer également la ligne qui permet de copier-coller des colonnes " cf. copier-coller des colonnes d'une feuille1 vers une feuille2"
    voici le fichierc-joint : http://cjoint.com/data/0GrnXOVuNRY.htm
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 772
       
      Nous ne sommes pas ici pour faire à votre place.
      Si vous ne comprenez pas le code vous n'arriverez pas à le maintenir...
      Donc...

      Pour boucler sur les feuilles Feuil1, Feuil2 et Feuil3 faites ceci :
      Dim Feuille As Worksheet
      
      For Each Feuille In ThisWorkbook.Worksheets
          If Feuille.Name = "Feuil1" Or Feuille.Name = "Feuil2" Or Feuille.Name = "Feuil3" Then
              With Feuille
                  'ICI vous mettez le code que vous souhaitez voir exécurer sur les trois feuilles
              End With
          End If
      'Ici le code du copié/collé
      Next Feuille
      0
    2. LAASRI.reda Messages postés 26 Statut Membre
       
      je m'excuse mais j'ai jamais lu le langage VBA et je sais bien que c'est l'occasion mais la contrainte du temps m'a obligé de tirer profit de votre soutien ... bref ,c'est trés gentille de votre part et merci bcq pour votre aide
      0