Macro - Boutons imprimer et enregistrer dans le même dossier
plingx
Messages postés
144
Statut
Membre
-
plingx Messages postés 144 Statut Membre -
plingx Messages postés 144 Statut Membre -
Bonjour,
Je n'y connais rien en macro, j'ai suivi 2 questions trouvé sur CCM et 2 tutos sur deux autres sites et je n'y comprend rien, ça ne marche jamais !
Je voudrais avoir un bouton qui enregistre l'onglet de mon fichier en pdf dans un dossier qui se trouve au même endroit que mon fichier exel.
Mais le pdf doit porter le nom de la cellule F4, et selon si la cellule E1 est "FACTURE" ou "DEVIS", l'enregistrer dans le dossier facture ou devis ...
Je fais ce document pour ma mère, je vais être honnête avec vous, je ne cherche pas a savoir le faire, je n'en aurait plus jamais l'utilité et sans pratique, j'oublierai.
Merci pour votre aide
Je n'y connais rien en macro, j'ai suivi 2 questions trouvé sur CCM et 2 tutos sur deux autres sites et je n'y comprend rien, ça ne marche jamais !
Je voudrais avoir un bouton qui enregistre l'onglet de mon fichier en pdf dans un dossier qui se trouve au même endroit que mon fichier exel.
Mais le pdf doit porter le nom de la cellule F4, et selon si la cellule E1 est "FACTURE" ou "DEVIS", l'enregistrer dans le dossier facture ou devis ...
Je fais ce document pour ma mère, je vais être honnête avec vous, je ne cherche pas a savoir le faire, je n'en aurait plus jamais l'utilité et sans pratique, j'oublierai.
Merci pour votre aide
A voir également:
- Macro - Boutons imprimer et enregistrer dans le même dossier
- Audacity enregistrer son pc - Guide
- Dossier appdata - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Journal de naissance gratuit a imprimer - Télécharger - Histoire & Religion
- Comment imprimer en a5 - Guide
7 réponses
Bonsoir
Avec un peu de retard, voilà si j'ai bien compris ta demande
https://www.cjoint.com/c/GBdtUlX66RA
cdt
Avec un peu de retard, voilà si j'ai bien compris ta demande
https://www.cjoint.com/c/GBdtUlX66RA
cdt
Bonjour
M'enfin je comprends mieux
ci-dessous le code mis à jour
Tu le colles à la place de l'ancien
Cordialement
M'enfin je comprends mieux
ci-dessous le code mis à jour
Tu le colles à la place de l'ancien
Sub pdf_export()
Application.ScreenUpdating = False
Call RépertoireExiste(ThisWorkbook.Path & "\" & Sheets("Facture & Devis").Range("E1").Value)
ThisWorkbook.Worksheets.Add After:=Worksheets(Worksheets.Count)
Sheets("Facture & Devis").Range("A1:F45").Copy
With ActiveSheet
'Sheets("Facture & Devis").Range("A1:F45").Copy
ActiveSheet.Range("A1").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveSheet.Range("A1:F45").Select
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\" & Sheets("Facture & Devis").Range("E1").Value & "\" & Sheets("Facture & Devis").Range("F4").Value & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
MsgBox "le Fichier " & Sheets("Facture & Devis").Range("F4").Value & " a été bien exporté dans le dossier " & Sheets("Facture & Devis").Range("E1").Value
End With
Application.DisplayAlerts = False
Worksheets(Worksheets.Count).Delete
Sheets("Facture & Devis").Activate
Application.ScreenUpdating = True
End Sub
Cordialement
J'aurai du commencer par envoyer le document, je n'y ai pas pensé !
Le problème que je rencontre ce coup-ci, c'est qu'il enregistre le document en mettant toutes les cellules a la même dimension, du coup les textes n’apparaissent pas entier ...
Je n'aurai pas cru que ce serait si compliqué, je suis désolé de te déranger encore une fois !
Le problème que je rencontre ce coup-ci, c'est qu'il enregistre le document en mettant toutes les cellules a la même dimension, du coup les textes n’apparaissent pas entier ...
Je n'aurai pas cru que ce serait si compliqué, je suis désolé de te déranger encore une fois !
Bonsoir
Une approche qui réglera définitivement tous les soucis ... du moins je l’espère
Tu le colles à la place de l'ancien
Cdlt
Une approche qui réglera définitivement tous les soucis ... du moins je l’espère
Tu le colles à la place de l'ancien
Sub pdf_export()
ActiveWindow.DisplayGridlines = False
Worksheets("Facture & Devis").Range("A1:F45").CopyPicture xlScreen, xlBitmap
Application.DisplayAlerts = False
Call RépertoireExiste(ThisWorkbook.Path & "\" & Sheets("Facture & Devis").Range("E1").Value)
Set new = Worksheets.Add
With ActiveSheet.PageSetup
.Zoom = 95
End With
With new
.Paste
.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\" & Sheets("Facture & Devis").Range("E1").Value & "\" & Sheets("Facture & Devis").Range("F4").Value & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
.Delete
MsgBox "le Fichier " & Sheets("Facture & Devis").Range("F4").Value & " a été bien exporté dans le dossier " & Sheets("Facture & Devis").Range("E1").Value
End With
Sheets("Facture & Devis").Activate
End Sub
Cdlt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oup'ss c'est ma faute
remplacer le "new" par "nw"
remplacer le "new" par "nw"
Sub pdf_export_image()
ActiveWindow.DisplayGridlines = False
Worksheets("Facture & Devis").Range("A1:F45").CopyPicture xlScreen, xlBitmap
Application.DisplayAlerts = False
Call RépertoireExiste(ThisWorkbook.Path & "\" & Sheets("Facture & Devis").Range("E1").Value)
Set nw = Worksheets.Add
With ActiveSheet.PageSetup
.Zoom = 95
End With
With nw
.Paste
.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\" & Sheets("Facture & Devis").Range("E1").Value & "\" & Sheets("Facture & Devis").Range("F4").Value & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
.Delete
MsgBox "le Fichier " & Sheets("Facture & Devis").Range("F4").Value & " a été bien exporté dans le dossier " & Sheets("Facture & Devis").Range("E1").Value
End With
Sheets("Facture & Devis").Activate
End Sub
Modifie le
a
pour voir
quelle version de excel utilises tu ?
.Zoom = 95
a
.Zoom = 50
pour voir
quelle version de excel utilises tu ?
Ah yes ! je vais chercher le bon nombre !
j'utilise office2013.
Si je peux t’embêter encore une fois, ça ne prend pas les bordures verticales tout a gauche, c'est possible de régler ça ? Il y a une partie du code qui gères les réglages avec lesquels je pourrais jouet pour améliorer la qualité du pdf ?
j'utilise office2013.
Si je peux t’embêter encore une fois, ça ne prend pas les bordures verticales tout a gauche, c'est possible de régler ça ? Il y a une partie du code qui gères les réglages avec lesquels je pourrais jouet pour améliorer la qualité du pdf ?
bonsoir
Une approche avec libération de la colonne A et de la ligne 1 pour plus d'esthétique ( à mon gout)
Attention aux cellules liées les formules risquent d’être faussées.
A essayer
https://www.cjoint.com/c/GBhvl2cIIxA
Cdt
Une approche avec libération de la colonne A et de la ligne 1 pour plus d'esthétique ( à mon gout)
Attention aux cellules liées les formules risquent d’être faussées.
A essayer
https://www.cjoint.com/c/GBhvl2cIIxA
Cdt
Désolé pour le retard, c'est effectivement mieux merci ! Si je comprend bien, il fait plus ou moins une capture d’écran qu'il agrandit après ? Je dis ça par ce que ça donne un fichier un peu pixelisé, j'ai cherché les différents réglages mais je n'ai rien trouvé, je n'ai d’ailleurs trouvé aucun post qui parle de ce "flou", ça m'étonne...
Vraiment merci beaucoup ! j'ai pu l'adapter a mon document en changeant le nom "feuil1" !
J'ai cependant 2 problèmes :
- Il enregistre tout le quadrillage même si je le désactive dans l'onglet "affichage" et je voudrais qu'il enregistre uniquement les bordures que j'ai mis.
- Il enregistre sur une deuxième page la partie a droite de mon tableau avec notamment le bouton du macro. J'aimerai doc qu'il enregistre uniquement mon tableau de A1:F45 (compris)
Merci pour ton aide !