Macro utilisable pour toutes les feuilles d'un classeur [Résolu]

Signaler
Messages postés
4
Date d'inscription
jeudi 20 juillet 2006
Statut
Membre
Dernière intervention
21 juillet 2006
-
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
-
Bonjour,
Hier j'ai posé une question pour créer un programme me permettant de copier les éléments d'une liste dans une feuille d'un autre classeur et de mettre à jour cette derniere lorsque de nouveaux événements étaient créés. J'ai donc réussi avec le code ci-dessous.
Cependant, je voudrais que ce programme s'applique sur toutes les feuilles de mon classeur ainsi que dans des classeurs différents. Je pensais faire une boucle mais je ne m'en sors pas . Auriez vous quelques conseils svp? Merci d'avance.

Sub Extract()
Dim wksw As Worksheet
Dim wksr As Worksheet
Dim wbrr As Workbook
Dim rr As Range
Dim rw As Range
Dim wkssheet As Worksheet
Dim LigneLecture As Integer

Set wksw = Application.ActiveWorkbook().Worksheets("NomFeuilleàmodifier")
Set wbr = Workbooks.Open("C...\liste.xls") 'liste=source de données
Set wksr = wbr.Worksheets("liste")


'   Lecture
LigneLecture = 6 '1ère ligne à lire
While Not IsEmpty(wksr.Cells(LigneLecture, 1))
   
    If wksw.Cells(LigneLecture, 2) <> wksr.Cells(LigneLecture, 2) Then
        aa$ = LigneLecture & ":" & LigneLecture
        wksw.Rows(aa$).Insert (xlDown)
  
        For j = 1 To 3
        wksw.Cells(LigneLecture, j) = wksr.Cells(LigneLecture, j)
        Next j
    End If
    LigneLecture = LigneLecture + 1
Wend
wbr.Close
wksw.Activate
End Sub

2 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
16
Arf, j'ai pas fait gaffe, t'es en VB, je pensais VBA.

Ben dans ton cas, il faut placer la partie 'commune' de code à tous tes classeurs dans une procédure, par contre à mon avis tu es obligé d'ouvrir tes classeurs un à un, il suffira donc d'appeler ta procédure après ouverture et avant fermeture de chaque classeur.

@++

  Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"

Merci de prendre le temps de répondre à ce
sondage


Merci de prendre le temps de lire
le Règlement CS


    http://www.smileycentral.com/?partner=ZSzeb008_ZNxdm414YYFR
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
16
Salut,

il faut placer la macro dans la classeur de macros personnelles nommé PERSO.xls

S'il n'apparait pas en projet, enregistre toi pour faire une macro en précisant 'enregistrer macro dans tous les classeurs' et arrête la macro.
Ensuite va dans l'éditeur VB et copie ta macro dans le module du projet PERSO.xls

@++

  Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"

Merci de prendre le temps de répondre à ce
sondage


Merci de prendre le temps de lire
le Règlement CS


    http://www.smileycentral.com/?partner=ZSzeb008_ZNxdm414YYFR