OVH Cloud OVH Cloud

creation de fichier

12 réponses
Avatar
Patrick Leguet
Bonjour,
ci dessous ma macro qui doit me creer un fichier si celui ci n'existe pas et
ca ne marche qu'aléatoirement.
Si quelqu'un pouvait me dire pourquoi.
d'avance merci
Cordialement
Patrick


Sub workbook_open()
Dim Chemin
Dim datefich
Dim mois
Dim an
datefich = Date
Application.DisplayAlerts = False
Chemin = ActiveWorkbook.Path
an = CStr(Year(datefich))
mois = CStr(Month(datefich))
datefich = an & "-" & mois '
If Dir(Chemin & "\" & datefich & ".xls") = datefich & ".xls" Then
Workbooks.Open Filename:=(Chemin & "\" & datefich & ".xls")
Application.WindowState = xlMinimized
AppActivate "Microsoft Excel"
UserForm1.Show
auto_open
End If

If Dir(Chemin & "\" & datefich & ".xls") = "" Then
MsgBox "le fichier " & datefich & " " & ActiveWorkbook.Path & " est
introuvable!"
ActiveWorkbook.SaveAs Filename:=Chemin & "\" & datefich & ".xls",
FileFormat _
:=xlNormal, Password:="", WriteResPassword:="",
ReadOnlyRecommended:= _
False, CreateBackup:=False

MsgBox "le fichier " & datefich & " a été créer"
Application.WindowState = xlMinimized
AppActivate "Microsoft Excel"
UserForm1.Show
End If

End Sub

2 réponses

1 2
Avatar
Patrick Leguet
???

"Gloops" a écrit dans le message de news:
k7t3f1$lni$
Alors interroge-toi sur le sens de ActiveWorkbook.Path

_____________________________________________
Patrick Leguet a écrit, le 13/11/2012 05:59 :
Bonjour,
le but est d'avoir un fichier vierge qui lors de son ouverture verifie que
le fichier du mois courant existe et l'ouvre, si le fichier n'existe pas
il
le cree et l'enregistre.
(C'est pour une appli de caisse enreugistreuse)
cordialement
patrick
Avatar
Patrick Leguet
Bonsoir,
je vais tester au + vite
Merci
Cordialement
Patrick
"Jacky" a écrit dans le message de news:
k7u0ch$pa7$
Re..
Comme ceci peut-être
'---------------
Sub workbook_open()
Dim Chemin As String, Fichier As String
Dim datefich
Dim mois
Dim an
datefich = Date
'Application.DisplayAlerts = False
Chemin = ThisWorkbook.Path & ""
Fichier = ThisWorkbook.Name
an = CStr(Year(datefich))
mois = CStr(Month(datefich))
datefich = an & "-" & mois '
If Dir(Chemin & datefich & ".xls") = datefich & ".xls" Then
If Fichier <> datefich & ".xls" Then
Workbooks.Open Filename:=(Chemin & datefich & ".xls")
Workbooks(Fichier).Close False
End If
Else
MsgBox "le fichier " & Chemin & datefich & " est introuvable! """
ActiveWorkbook.SaveAs Filename:=Chemin & datefich & ".xls"
MsgBox "le fichier " & datefich & " a été créer"
End If
UserForm1.Show
'auto_open
End Sub
'-----------------

--
Salutations
JJ


"Jacky" a écrit dans le message de news:
k7ta5b$ud$
Bonjour,
Je pense que......
C'est le serpent qui se mord la queue....
Si le fichier n'existe pas, le code va créer un classeur qui a dans son
Thisworkbook le même code que le classeur de lancement
1- Le fichier de lancement doit être indépendant (éventuellement fermé
après l'ouverture de classeur de travail)
2- Avant la création du classeur "An-mois" le thisworkbook doit être
supprimer.
--
Salutations
JJ


"Patrick Leguet" a écrit dans le message de news:
50a084f1$0$1968$
Bonjour,
ci dessous ma macro qui doit me creer un fichier si celui ci n'existe
pas et
ca ne marche qu'aléatoirement.
Si quelqu'un pouvait me dire pourquoi.
d'avance merci
Cordialement
Patrick


Sub workbook_open()
Dim Chemin
Dim datefich
Dim mois
Dim an
datefich = Date
Application.DisplayAlerts = False
Chemin = ActiveWorkbook.Path
an = CStr(Year(datefich))
mois = CStr(Month(datefich))
datefich = an & "-" & mois '
If Dir(Chemin & "" & datefich & ".xls") = datefich & ".xls" Then
Workbooks.Open Filename:=(Chemin & "" & datefich & ".xls")
Application.WindowState = xlMinimized
AppActivate "Microsoft Excel"
UserForm1.Show
auto_open
End If

If Dir(Chemin & "" & datefich & ".xls") = "" Then
MsgBox "le fichier " & datefich & " " & ActiveWorkbook.Path & " est
introuvable!"
ActiveWorkbook.SaveAs Filename:=Chemin & "" & datefich & ".xls",
FileFormat _
:=xlNormal, Password:="", WriteResPassword:="",
ReadOnlyRecommended:= _
False, CreateBackup:úlse

MsgBox "le fichier " & datefich & " a été créer"
Application.WindowState = xlMinimized
AppActivate "Microsoft Excel"
UserForm1.Show
End If

End Sub











1 2