1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' Déclaration des variables
Dim mois 'Mois à traiter
Dim annee 'Année à traiter
Dim mm_aa 'Conacténation Mois_Année
Dim fichierxls 'Nom du nouveau classeur mensuel
Dim fso 'Création de l'objet FileSystemObject
Dim fin 'Fin traitement
Dim i 'Boucle feuilles classeur
Dim appExcel 'Application Excel
Dim wbExcel 'Classeur Excel
Dim wsExcel 'Feuille Excel
Dim xlPart
Dim xlByRows
' Création classeur Excel mensuel
fso = CreateObject("Scripting.FileSystemObject")
mois = InputBox("Nous sommes le " & mois & " ème mois de l'année " & annee & (Chr(13) & Chr(10)) & "Merci de saisir le mois désiré sur 2 caractères ex: juin = 06", "Création classeur Statistique Mensuel")
annee = InputBox("Nous sommes le " & mois & " ème mois de l'année " & annee & (Chr(13) & Chr(10)) & "Merci de saisir l'année désiré sur 4 caractères ex: 2017 = 2017", "Création classeur Statistique Mensuel")
mm_aa = mois & "_" & annee
fichierxls = "fichier-" & annee & mois & ".xlsx"
fso.CopyFile("d:\fichier-matrice.xlsx", "d:\" & fichierxls, True)
xlPart = Nothing
xlByRows = Nothing
Path = Nothing
'Ouverture de l'application Excel
appExcel = CreateObject("Excel.Application")
'Ouverture du classeur Excel
wbExcel = appExcel.Workbooks.Open("d:\" & fichierxls)
appExcel.Visible = True 'les actions seront visibles. Pour tout lancer en arrière-plan, remplacer True par False
'wsExcel correspond la feuille du classeur
For i = 13 To 41
wsExcel = wbExcel.Worksheets(i)
'Remplacement date dans les Cellules des feuilles 13 à 41
wsExcel.Cells.Replace(What:="05_17", Replacement:=mm_aa, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, ReplaceFormat:=False)
Next
'Enregistrement du classeur Excel
wbExcel.Save()
'Fermeture du classeur Excel
wbExcel.Close()
'Fermeture de l'application Excel
appExcel.Quit()
'Désallocation mémoire
wsExcel = Nothing
wbExcel = Nothing
appExcel = Nothing
' Fin de Traitement
fin = InputBox("Le traitement est terminé - saisissez OK puis retour chariot", "Création classeur Statistique Mensuel")
MsgBox(fin)
End Sub |
Partager