OVH Cloud OVH Cloud

"Dim" successifs ?

1 réponse
Avatar
YANN24
Bonjour,
je voudrais savoir s'il est possible dans mon code VBA de faire suivre
plusieurs "dim"? En effet, il me faut copier plusieurs feuilles de mon
fichier source vers des fichiers cibles différents. Puis - je faire suivre
mon code VBA suivant en le répétant ? Merci. YANN

Sub CopierFeuille()
Dim Rg As Range
Application.ScreenUpdating = False
'Classeur Source
Set Rg = Workbooks("Fiche-AEC.xls").Worksheets(5).Range("A2:E65536")
Rg.Copy
'Classeur destination
With Workbooks("Fiche-AGNES.xls").Worksheets(1)
.Activate
.Range("A1").Activate
.Paste
.Range("A1").Select
End With
Rg.Parent.Activate
Application.CutCopyMode = False
Set Rg = Nothing
' 'ici, je recopierais le même code en
l'adaptant
End SUb

1 réponse

Avatar
LSteph
Bonsoir ,
tu peux aussi faire une liste de tes range
et passer Rg en paramêtre de CopierFeuille

ici un exemple avec un string ou monmess symbolise copier feuille et
laliste une plage contenant les noms des range:

Sub monmess(rg As String)
MsgBox "la cellule contient: " & rg
End Sub

Sub laliste()
Dim c
For Each c In Range("c3:c5")
monmess (c)
Next
End Sub

"YANN24" a écrit dans le message de news:

Bonjour,
je voudrais savoir s'il est possible dans mon code VBA de faire suivre
plusieurs "dim"? En effet, il me faut copier plusieurs feuilles de mon
fichier source vers des fichiers cibles différents. Puis - je faire suivre
mon code VBA suivant en le répétant ? Merci. YANN

Sub CopierFeuille()
Dim Rg As Range
Application.ScreenUpdating = False
'Classeur Source
Set Rg = Workbooks("Fiche-AEC.xls").Worksheets(5).Range("A2:E65536")
Rg.Copy
'Classeur destination
With Workbooks("Fiche-AGNES.xls").Worksheets(1)
.Activate
.Range("A1").Activate
.Paste
.Range("A1").Select
End With
Rg.Parent.Activate
Application.CutCopyMode = False
Set Rg = Nothing
' 'ici, je recopierais le même code en
l'adaptant
End SUb