Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments"& Textbox2.Value& "-"&
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value& ".pdf"
i = 1
If ExistenceFichier(sDossier& sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00"& CStr(i)
Case 10 To 99: sNum = "0"& CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value& "_"& sNum& ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier& sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier&
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments"& Textbox2.Value& "-"&
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value& ".pdf"
i = 1
If ExistenceFichier(sDossier& sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00"& CStr(i)
Case 10 To 99: sNum = "0"& CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value& "_"& sNum& ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier& sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier&
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments"& Textbox2.Value& "-"&
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value& ".pdf"
i = 1
If ExistenceFichier(sDossier& sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00"& CStr(i)
Case 10 To 99: sNum = "0"& CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value& "_"& sNum& ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier& sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier&
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
En passant, on accepte volontiers des solutions provenant
d'ailleurs. Cela permet à tous les participants d'apprendre...
Merci de partager !
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
michdenis a écrit le 17/01/2011 à 14h03 :Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion
:
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier
automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le
dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
merci merci Mith et Isa
j'ai trouvé une autre solution en consultant des forums.
je ne suis pas avarre en question puisque ca ne fait pas très longtemps
que je
me suis mis au vba.
mais je progresse doucement.
je poste d'ailleurs une nouvelle question concernant les bases de
données.
à très vite alors
bye
En passant, on accepte volontiers des solutions provenant
d'ailleurs. Cela permet à tous les participants d'apprendre...
Merci de partager !
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
michdenis a écrit le 17/01/2011 à 14h03 :
Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion
:
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier
automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le
dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
merci merci Mith et Isa
j'ai trouvé une autre solution en consultant des forums.
je ne suis pas avarre en question puisque ca ne fait pas très longtemps
que je
me suis mis au vba.
mais je progresse doucement.
je poste d'ailleurs une nouvelle question concernant les bases de
données.
à très vite alors
bye
En passant, on accepte volontiers des solutions provenant
d'ailleurs. Cela permet à tous les participants d'apprendre...
Merci de partager !
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
michdenis a écrit le 17/01/2011 à 14h03 :Je crois que tu as compris qu'à cette ligne de code
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Il faut remplacer "Chemin" par ta variable : sDossier
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de discussion
:
igvqtu$mha$
Bonjour,
Si j'ai bien compris ta démarche, tu pourrais aussi utiliser ceci :
'------------------------------------------
Sub test()
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer, T(), A As Integer
sDossier = "C:UsersmoiDocuments" & _
Textbox2.Value & "-" & Textbox3.Value & ""
'pour tester si le dossier existe :
If Dir(sDossier, vbDirectory) = "" Then
'Création du dossier s'il n'existe pas
Commande = Environ("comspec") & " /c mkdir " &
Chemin
Shell Commande, 0
End If
'Nom du fichier
sNomFichier = Dir(sDossier & le.Value & "*" &
".pdf")
Do While sNomFichier <> ""
A = A + 1
ReDim Preserve T(A)
T(A) = CLng(Split(Replace(sNomFichier, le.Value, ""),
".")(0))
sNomFichier = Dir()
Loop
'retourne le dernier numéro de fichier utilisé + 1
sNum = Format(Application.Max(T) + 1, "#000")
'Le prochain nom de fichier sera :
sNomFichier = le.Value & sNum & ".pdf"
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sDossier & sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:úlse, OpenAfterPublish:úlse
ActiveSheet.PrintOut
End Sub
'------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
Bonjour,
je voudrais créer un dossier et y enregistrer un fichier
automatiquement
à
partir des valeurs de cellules de mon choix.
Mon code crée le dossier voulu mais le fichier n'est pas dans le
dossier
crée
voici une partie de ce code :
'créer dossier employé
Dim sDossier As String, sNomFichier As String
Dim sNum As String, i As Integer
sDossier = "C:UsersMoiDocuments" & Textbox2.Value &
"-" &
Textbox3.Value
CreerDossier sDossier
sNomFichier = le.Value & ".pdf"
i = 1
If ExistenceFichier(sDossier & sNomFichier) = True Then
Do
Select Case i
Case 1 To 9: sNum = "00" & CStr(i)
Case 10 To 99: sNum = "0" & CStr(i)
Case Else: sNum = CStr(i)
End Select
sNomFichier = le.Value & "_" & sNum & ".pdf"
i = i + 1
Loop Until ExistenceFichier(sDossier & sNomFichier) = False
End If
'Publier en pdf et imprimer
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sDossier &
sNomFichier, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:úlse,
_
OpenAfterPublish:úlse
ActiveSheet.PrintOut
merci merci Mith et Isa
j'ai trouvé une autre solution en consultant des forums.
je ne suis pas avarre en question puisque ca ne fait pas très longtemps
que je
me suis mis au vba.
mais je progresse doucement.
je poste d'ailleurs une nouvelle question concernant les bases de
données.
à très vite alors
bye
Merci pour le retour.
MichD
--------------------------------------------
Merci pour le retour.
MichD
--------------------------------------------
Merci pour le retour.
MichD
--------------------------------------------
Merci pour le retour.
MichD
--------------------------------------------
Merci pour le retour.
MichD
--------------------------------------------
Merci pour le retour.
MichD
--------------------------------------------
| Je voudai maintenant insérer une ligne de code pour que
|mes textbox soit vidées quand le combobox n'affiche pas
|une données de la liste ou reste vide.
Où sont tes textbox ? Dans un formulaire, une feuille de calcul ?
Dans un formulaire, tu peux utiliser quelque chose comme :
'------------------------------------------
Private Sub CommandButton1_Click()
Dim C As Control
If Me.ComboBox1.ListIndex = -1 Then
For Each C In Me.Controls
If TypeName(C) = "TextBox" Then
C.Text = ""
End If
Next
End If
End Sub
'------------------------------------------
Dans une feuille de calcul :
'-------------------------------------------
Sub test()
Dim Sh As OLEObject
With Worksheets("Feuil1") 'Nom feuille à adapter
If .ComboBox1.ListIndex = -1 Then
For Each Sh In .OLEObjects
If TypeName(Sh.Object) = "TextBox" Then
Sh.Object = ""
End If
Next
End If
End With
End Sub
'-------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
michdenis a écrit le 19/01/2011 à 14h31 :Merci pour le retour.
MichD
--------------------------------------------
Je voudai maintenant insérer une ligne de code pour que mes textbox soit
vidées
quand le combobox n'affiche pas une données de la liste ou reste vide.
| Je voudai maintenant insérer une ligne de code pour que
|mes textbox soit vidées quand le combobox n'affiche pas
|une données de la liste ou reste vide.
Où sont tes textbox ? Dans un formulaire, une feuille de calcul ?
Dans un formulaire, tu peux utiliser quelque chose comme :
'------------------------------------------
Private Sub CommandButton1_Click()
Dim C As Control
If Me.ComboBox1.ListIndex = -1 Then
For Each C In Me.Controls
If TypeName(C) = "TextBox" Then
C.Text = ""
End If
Next
End If
End Sub
'------------------------------------------
Dans une feuille de calcul :
'-------------------------------------------
Sub test()
Dim Sh As OLEObject
With Worksheets("Feuil1") 'Nom feuille à adapter
If .ComboBox1.ListIndex = -1 Then
For Each Sh In .OLEObjects
If TypeName(Sh.Object) = "TextBox" Then
Sh.Object = ""
End If
Next
End If
End With
End Sub
'-------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
michdenis a écrit le 19/01/2011 à 14h31 :
Merci pour le retour.
MichD
--------------------------------------------
Je voudai maintenant insérer une ligne de code pour que mes textbox soit
vidées
quand le combobox n'affiche pas une données de la liste ou reste vide.
| Je voudai maintenant insérer une ligne de code pour que
|mes textbox soit vidées quand le combobox n'affiche pas
|une données de la liste ou reste vide.
Où sont tes textbox ? Dans un formulaire, une feuille de calcul ?
Dans un formulaire, tu peux utiliser quelque chose comme :
'------------------------------------------
Private Sub CommandButton1_Click()
Dim C As Control
If Me.ComboBox1.ListIndex = -1 Then
For Each C In Me.Controls
If TypeName(C) = "TextBox" Then
C.Text = ""
End If
Next
End If
End Sub
'------------------------------------------
Dans une feuille de calcul :
'-------------------------------------------
Sub test()
Dim Sh As OLEObject
With Worksheets("Feuil1") 'Nom feuille à adapter
If .ComboBox1.ListIndex = -1 Then
For Each Sh In .OLEObjects
If TypeName(Sh.Object) = "TextBox" Then
Sh.Object = ""
End If
Next
End If
End With
End Sub
'-------------------------------------------
MichD
--------------------------------------------
"bob1877" a écrit dans le message de groupe de discussion :
michdenis a écrit le 19/01/2011 à 14h31 :Merci pour le retour.
MichD
--------------------------------------------
Je voudai maintenant insérer une ligne de code pour que mes textbox soit
vidées
quand le combobox n'affiche pas une données de la liste ou reste vide.