Variable pour première et derdière feuille

T

Temjeh

Guest
Bonjour à tous et merci pour votre aide

J,ai ceci qui fonctionne tres bien mais je voudrais y rendre la procédure de copie d'onglets plus variable au cas ou le nombre de feuille varie.

Sub Copie_Tout()
Dim r
r = Application.WorksheetFunction.CountA(Range('a1:a1000'))
Dim chemin
chemin = ActiveWorkbook.Path

For i = 1 To r
Application.DisplayAlerts = False

ChDir ActiveWorkbook.Path
Workbooks.Open Filename:=ActiveWorkbook.Path & '\\' & Range('A' & i).Value
Workbooks.Open Filename:=chemin & '\\' & 'vide.xls'
'_DEPART_______________________________________________________________________

Windows('Uptdate_Macro').Activate
Windows(Range('A' & i) & '').Activate

Sheets(1).Select
Cells.Select
Selection.Copy
Windows('Vide').Activate
Sheets(1).Select
Range('A1').Select
ActiveSheet.Paste
Range('A1').Select


Sheets(2).Select
Cells.Select
Selection.Copy
Windows('Vide').Activate
Sheets(2).Select
Range('A1').Select
ActiveSheet.Paste
Range('A1').Select

Sheets(1).Select

'_FIN_______________________________________________________________________


Windows('Uptdate_Macro').Activate
Windows(Range('A' & i) & '').Activate
ActiveWindow.Close SaveChanges:=False
Windows('Uptdate_Macro').Activate
Range('A' & i).Copy
Windows('Vide').Activate
Range('A65536').End(xlUp).Offset(1, 0).Activate
ActiveCell.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
ActiveWorkbook.SaveAs Filename:=ActiveWorkbook.Path & '\\' & ActiveCell.Value
Range('A65536').End(xlUp).Activate
ActiveCell = ''
Range('A1').Select
ActiveWindow.Close SaveChanges:=True
Application.DisplayAlerts = True
Next i

End Sub

Merci beaucoup

Oups aussi restons dans les variables: Comment rendre les feuilles variables
Pour(feuil1)j'ai essayé: if ActiveSheet=sheets(1) ...pas bon
Et aulieu de (feuil4) va è la dernière: ActiveSheet=Sheets((Sheets.Count)) ne fonctionne pas ...pas bon

Private Sub SpinButton1_SpinDown()
If ActiveSheet.Name = 'Feuil1' Then
Sheets((Sheets.Count)).Activate
Label1 = ActiveSheet.Name
Else
ActiveSheet.Previous.Select
Label1 = ActiveSheet.Name
End If
End Sub

Private Sub SpinButton1_SpinUp()
If ActiveSheet.Name = 'Feuil4' Then
Sheets(1).Activate
Label1 = ActiveSheet.Name
Else
ActiveSheet.Next.Select
Label1 = ActiveSheet.Name
End If
End Sub

Merci

Temjeh
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 508
Messages
2 089 143
Membres
104 047
dernier inscrit
bravetta