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 50 51 52 53 54 55 56 57 58 59 60 61 62
| If ActiveSheet.Name = "devis" Then
nomdossier = "archives_devis"
Else
nomdossier = "archives_factures"
End If
racine = Workbooks(ActiveWorkbook.Name).Path
Dir Workbooks(ActiveWorkbook.Name).Path
ChDir racine 'se place sur le repertoire du programme
If (verif = Dir(racine & "\" & nomdossier & "\", vbDirectory)) = vbEmpty Then 'On teste l'existence du répertoire nomdossier
repert = racine & "\" & nomdossier
Else
MkDir racine & "\" & nomdossier 'on le crée s'il n'existe pas
repert = racine & "\" & nomdossier
End If
ChDir repert
trouver_nb_fact 'module pour compter mes fichiers en archive
'variable du dossier "annee"
rep_annee = VBA.Format(Now(), "yyyy") 'classement dans le rep "année"
If (verif = Dir(repert & "\" & rep_annee, vbDirectory)) = vbEmpty Then 'On teste l'existence du répertoire "année"
repert = repert & "\" & rep_annee
Else 'on le crée s'il n'existe pas
MkDir rep_annee
repert = repert & "\" & rep_annee
End If
ChDir repert
'variable du dossier "mois"
rep_mois = VBA.Format(Now(), "mm") 'classement dans le rep "mois"
If (verif = Dir(repert & "\" & rep_mois, vbDirectory)) = vbEmpty Then 'On teste l'existence du répertoire...
repert = repert & "\" & rep_mois
Else 'on le crée s'il n'existe pas
MkDir repert & "\" & rep_mois
repert = repert & "\" & rep_mois
End If
'variable du dossier "jour"
rep_jour = VBA.Format(Now(), "yyyy mm dd") 'classement dans le rep "jour"
'vérifie si le dossier "jour" existe, sinon le crée
If (verif = Dir(repert & "\" & rep_jour, vbDirectory)) = vbEmpty Then
repert = repert & "\" & rep_jour
Else
MkDir repert & "\" & rep_jour
repert = repert & "\" & rep_jour
End If
'ensuite c'est ma tambouille
'vérifie si le nom et adresse du client a bien été précisé
nomfeuil = ActiveSheet.Name
If Sheets(nomfeuil).Range("e2") = "" Then
MsgBox "le nom du destinataire n'a pas été précisé"
Sheets(nomfeuil).Range("e2").Select
FACTURE.Show
Exit Sub
End If
dateref = Now
nomcle = Sheets(nomfeuil).Range("e5")
Sheets(nomfeuil).Range("f1") = VBA.Format(dateref, "yy mm dd") & " " & nomcle & VBA.Format(inombre + 1, "0000")
nomfichier = Replace(Sheets(nomfeuil).Range("f1"), " ", "")
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
repert & "\" & nomfichier, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
End Sub |
Partager