'1) on crée le dossier de toutes manières (et s'il existe déjà, on gère) On Error Resume Next MkDir "d:\blablaa" On Error GoTo 0 '2) on regarde s'il est vide If Dir("d:\blabla") = "" Then MsgBox "vide" 'ou 3) on regarde s'il contient un dichier particulier If Dir("d:\blabla\entree.frm") <> "" Then MsgBox "présent"
Il faut que je crée un historique
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionDim Chemin As String Dim CheminA As String Dim CheminB As String Chemin = "C:\Historique" Année = "2013" If Dir(Chemin & Année, 16) = "" Then MkDir Chemin & Année CheminA = "C:\Historique" & Année & "" Application.ScreenUpdating = False Sheets("Archive").Copy With ActiveWorkbook .SaveAs Filename:=CheminA & Fs .Sheets("Archive").Name = "Archive" & "_" & Date_C .Close End With ElseIf Dir(Chemin & Année, 16) <> "" Then If ("C:\Historique" & Année & "" & Fs & ".xls") = "" Then CheminB = "C:\Historique" & Année & "" Application.ScreenUpdating = False Sheets("Archive").Copy With ActiveWorkbook .SaveAs Filename:=CheminB & Fs .Sheets("Archive").Name = "Archive" & "_" & Date_C .Close End With ElseIf ("C:\Historique" & Année & "" & Fs & ".xls") <> "" Then End If End If
If ("C:\Historique" & Année & "" & Fs & ".xls") = "" Then?
If Len(Dir("c:\Instructions.doc")) = 0 Then Msgbox "This file does NOT exist." Else Msgbox "This file does exist." End If
-> comment je peut aller copier une feuil de mon classeur "A" vers mon classeur "Fournisseur"?
Sub copie_feuille() 'Je copie "Archive" dans une nouvelle feuille avant "email" Sheets("Archive").Copy Before:=Sheets("email") 'Je nomme la nouvelle feuille Archive + la date de la commande ActiveSheet.Name = "Archive" & Date_C End Sub Déplacement de feuilles La méthode VBA pour déplacer une feuille est la méthode Move.
Si la ou les feuilles déplacées ont des liaisons avec d'autres classeurs, les liaisons seront conservées. sheets("Archive" & Date_C).Move Before:=workbooks(Fs).sheets(1) 'Déplacement dans un autre classeur
Sub copie_feuille() 'Je copie "Archive" dans une nouvelle feuille avant "email" ' Sheets("Archive").Copy Before:=Sheets("email") 'Je nomme la nouvelle feuille Archive + la date de la commande' ActiveSheet.Name = "Archive" & Date_C 'Déplacement de feuilles' sheets("Archive" & Date_C).Move Before:=workbooks(Fs).sheets(1) 'Déplacement dans un autre classeur ' End Sub
' -Sauvegarde la commande dans le dossier historique ' Dim Chemin As String Dim CheminA As String Dim CheminB As String Chemin = "C:\Historique" Année = "2013" If Len(Dir("C:\Historique" & Année & "")) = 0 Then MkDir Chemin & Année CheminA = "C:\Historique" & Année & "" Application.ScreenUpdating = False Sheets("Archive").Copy With ActiveWorkbook .SaveAs Filename:=CheminA & Fs .Sheets("Archive").Name = "Archive" & "_" & Date_C .Close End With End If If Len(Dir("C:\Historique" & Année & "")) = 1 Then If ("C:\Historique" & Année & "" & Fs & ".xls") = 0 Then CheminB = "C:\Historique" & Année & "" Application.ScreenUpdating = False Sheets("Archive").Copy With ActiveWorkbook .SaveAs Filename:=CheminB & Fs .Sheets("Archive").Name = "Archive" & "_" & Date_C .Close End With ElseIf ("C:\Historique" & Année & "" & Fs & ".xls") = 1 Then Sheets("Archive").Copy ActiveSheet.Name = "Archive" & Date_C Sheets("Archive" & Date_C).Move.Workbooks (Fs) End If End If
Si tu utilises .Move, la feuille sera déplacée et non pas copiée.
Donc, elle n'existera plus dans le classeur original... est-ce bien ce que tu veux ?Si tu utilises .Move, la feuille sera déplacée et non pas copiée.
Donc, elle n'existera plus dans le classeur original... est-ce bien ce que tu veux ?
Peux-tu nous dire à quoi a pu servir le code que je t'ai montré plus haut (pour traiter une partie des instructions que tu montres là) ?
A rien, apparemment.Peux-tu nous dire à quoi a pu servir le code que je t'ai montré plus haut (pour traiter une partie des instructions que tu montres là) ?
A rien, apparemment.