Variable en VB sur Excel

J

Jimmy GONNET

Guest
Bonjour,
Je souhaiterais que vous m'aidiez a scripter cela car je fait des copies de ma pages templates pour les 52 semaines d'une année et il faudrait que je recopie cela 52 en modifiant ... Est-ce possible de faire ca via une variable ou autre :

Sheets('Template').Select
Sheets('Template').Name = 'S01'
Sheets('S01').Select

'N° de Week (ici Week 1)
Sheets('S01').Range('B1') = 1
'Date de la semaine Suivante
Sheets('S01').Range('B2') = '02/01/2006'


Sheets('S01').Copy After:=Sheets(3)
Sheets('S01 (2)').Select
Sheets('S01 (2)').Name = 'S02'
Sheets('S02').Select

'N° de Week (ici Week 2)
Sheets('S02').Range('B1') = '=S01!$B$1+1'
'Date de la semaine Suivante
Sheets('S02').Range('B2') = '=S01!$B$2+7'


Sheets('S02').Copy After:=Sheets(4)
Sheets('S02 (2)').Select
Sheets('S02 (2)').Name = 'S03'
Sheets('S03').Select

'N° de Week (ici Week 3)
Sheets('S03').Range('B1') = '=S02!$B$1+1'
'Date de la semaine Suivante
Sheets('S03').Range('B2') = '=S02!$B$2+7'


Merci pour votre aide.
 

Jeannot45

XLDnaute Occasionnel
Salut Jimmy

Voici une petite procédure qui va résoudre ton problème:

Code:
Sub CopieTemplate()
Dim intCompteur As Integer, strNomFeuille As String, strFormule1 As String

Sheets(1).Select
Sheets(1).Name = 'S01'
Sheets('S01').Select

'N° de Week (ici Week 1)
    ActiveSheet.Range('B1') = 1
'Date de la semaine Suivante
    ActiveSheet.Range('B2') = '02/01/2006'
    
ActiveSheet.Copy After:=Sheets(1)

For intCompteur = 2 To 52


If intCompteur < 10 Then
    strNomFeuille = 'S0' & intCompteur
Else
    strNomFeuille = 'S' & intCompteur
End If
Sheets(intCompteur).Name = strNomFeuille

Sheets(strNomFeuille).Select

'Date de la semaine Suivante
    strFormule1 = '=' & Sheets(intCompteur - 1).Name & '!$B$2 + 7'
    ActiveSheet.Range('B1') = intCompteur
    ActiveSheet.Range('B2') = strFormule1
ActiveSheet.Copy After:=Sheets(intCompteur)
Next


End Sub

Le principe
On commence par initialiser la première feuille
puis par une boucle on génère les autres feuilles.

Bonne continuation

Jeannot
 
J

Jimmy GONNET

Guest
Merci beaucoup Jeannot pour ton aide qui m'a été précieuse. Effectivement ca correspondait exactement à ce que je souhaitais. Ca m'a permis de l'adapter pour la mise en place d'un suivi d'activité d'Equipe que je suis en train de faire sur excel.
J'essayerai de partager mon travail une fois que le fichier sera completement abouti.
Tous mes remerciement encore.
Jim.
 

Discussions similaires

Statistiques des forums

Discussions
312 393
Messages
2 088 006
Membres
103 695
dernier inscrit
acimi