Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 03/11/2009
De 78
Messages:
13
Système d'exploitation: PC Version Excel utilisée: excel 2007 |
Posté le : 03-11-2009 18h08
Bonjour,
Pour mon activitée professionnelle j'ai créer mon propre devis avec quelques interactions simples. Je souhaiterais mettre sur ma feuille principale un bouton avec comme fonction, une fois cliquer de sauvegarder ce document ( la zone délimité, le devis) en format PDF sur mon Bureau de l'ordinateur et éventuellement, cela serait mieux de sauvegarder (en PDF) et expédier par mail. Malgré quelques notions en Excel je suis perdu avec VBA, je sais que c'est possible, mais je sais pas comment. Ci-joint mon devis pour analyse et compréhension. Votre aide me serait très utile, en vous remerciant d'avance. Cordialement Antonio |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 03-11-2009 19h40
Bonsoir Antoniomiguel, bienvenue sur XLpages.com
![]() Citation : Antoniomiguel a écrit : Tu trouveras ci-joint une version de ton fichier répondant, je pense, à cette première demande. J'ai utilisé un bouton ActiveX inséré sur la feuille "Devis" et dont le code VBA est le suivant : DANS LE MODULE DE CODE DE LA FEUILLE "Devis" Private Sub btnPDF_Click() Pour l'envoi du document, quel client Mail utilises-tu ? Outlook ? (je ne suis pas un grand spécialiste de ce type de procédure, mais si tu utilises Outlook, je devrais sans doute pouvoir te proposer une solution) Cordialement, Didier_mDF
![]() Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 03/11/2009
De 78
Messages:
13
Système d'exploitation: PC Version Excel utilisée: excel 2007 |
Posté le : 03-11-2009 23h59
Sincérement, je suis en admiration par la réactivité de votre réponse, je ne l'ai pas encore essayer, mais le geste me fascine davantage.
Je vous tiens au courant et je ferais tout le nécéssaire pour faire de votre site un lieu d'excellence. Sinon oui j'utilise Outlook comme mail. Je vais essayer votre proposition, merci d'avance. Cordialement. Antonio |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 03/11/2009
De 78
Messages:
13
Système d'exploitation: PC Version Excel utilisée: excel 2007 |
Posté le : 04-11-2009 00h22
Bonsoir Didier,
Encore une fois merci pour ton aide. J'ai ouvert le classeur, cliquer sur le bouton et malheureusement il me renvoye le message suivant: Option Explicit Private Sub btnPDF_Click() 'myDearFriend! - www.mdf-xlpages.com Dim Chemin As String 'Créer le fichier PDF sur le bureau Windows avec le numéro de devis comme titre With Sheets("Devis") Chemin = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\Devis " & .Range("C22").Text & ".pdf" ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin, Quality:=xlQualityStandard, _ IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:=False End With End Sub Sinon pour moi c'est super , c'est déjà entrevoir les futurs devis plus sereinnement.Je te renvoye le dossier Excel au cas ou.Merci encore. Cordialement. |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 04-11-2009 00h41
Re,
Question Antoniomiguel : sur ta version XL2007, dans l'option Enregistrer sous, as-tu bien l'option PDF ou XPS ? ![]() Si tel n'est pas le cas, c'est que tes applications Microsoft ne sont pas à jour. Je te conseille de lire et mettre en pratique ce qui est indiqué sous ce lien : Générer un document PDF avec Excel 2007 du site Vulgarisation-informatique.com. Si le problème est ainsi réglé, je te fournirai (demain car il se fait tard) une solution pour l'envoi. Cordialement, Didier_mDF
![]() Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 03/11/2009
De 78
Messages:
13
Système d'exploitation: PC Version Excel utilisée: excel 2007 |
Posté le : 04-11-2009 00h45
Didier, |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 03/11/2009
De 78
Messages:
13
Système d'exploitation: PC Version Excel utilisée: excel 2007 |
Posté le : 04-11-2009 00h52
Désoler, j'ai pas vu l'heure, j'ai exactement ce format là PDF ou XPS.
Merci encore à demain. Super ton site et ton dévouement. Bravo Antonio |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 04-11-2009 00h58
Je ne peux reproduire le problème que tu décris (après plusieurs essais consécutifs)...
En premier lieu, en faisant Débogage dans la boite d'alerte, regarde si le code s'arrête toujours au même endroit. Ensuite, il faudrait que tu arrives à cerner le pourquoi de cette réaction bloquante à retardement... (peut être que la sauvegarde du dit document directement sur le bureau Windows n'est pas une si bonne idée que ça et peut être que ton problème n'est pas étranger à ça...) Indique moi également si tu es sous XP ou Vista. A demain. Cordialement, EDITION: Autre piste: si tu crées un .pdf avec un numéro X de devis, et que tu l'ouvres dans Acrobat Reader pour le visualiser (sans le refermer ensuite). En relançant la macro (par le bouton) sans changer ce numéro de devis déjà utilisé, la macro plantera car ton document, étant déjà ouvert, ne peut être recréé. Didier_mDF
![]() Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 03/11/2009
De 78
Messages:
13
Système d'exploitation: PC Version Excel utilisée: excel 2007 |
Posté le : 05-11-2009 10h13
Salut Didier,
Encore une fois merci, moi pour l'instant j'abandonne, j'ai beau tourner dans tout les sens, je n'arrive pas à créer un devis automatiser. Il faudrait que je trouve un système simple afin d'automatiser certaines tâches et de sortir mon devis. J'ai 12 familles de services, dans chaque famille plusieurs offres de prestations. Je souhaiterais par exemple quand j'ai un chantier avec au moins 4 familles différentes, pouvoir ouvrir chaque famille via un formulaire ou autre, cliquez sur l'offre ou la prestation et que elle s'affiche sur une ligne de mon devis et ainsi de suite. Je t'envoye à nouveau mon modèle type, tu comprendras vite, je t'nvoye aussi un devis déjà rempli( onglet 2 - Devis). J'en ai vraiment besoin, pourrais tu m'aider stp. Je suis prêt à payer pour avoir un truc fonctionnel. Tout les logiciels déjàs formatés comme Ciel ou autres ne me correspondent pas et j'ai juste besoin de faire des devis. Merci d'avance. |
|
![]() |
![]() ![]() |
Re: Intégrer Macro SaveAsPDF | ||
---|---|---|
Inscription: 23/05/2008
De La Varenne Saint-Hilaire
Messages:
356
Système d'exploitation: PC Version Excel utilisée: 2010 |
Posté le : 05-11-2009 15h55
Bonjour Antoniomiguel, bonjour Didier, le forum.
Je me permets de m'immiscer dans la conversation en repartant du fichier que tu as déposé la dernière fois, le dernier n'étant pas passé. J'ai modifié certaines choses, peut-être cette proposition (qui reste largement perfectible) pourra-t-elle t'aider un peu. Tu verras que j'ai éliminé les onglets pour regrouper les lots dans une seule feuille nommée "Lots". J'ai également modifié tes zones nommées, puis éliminé le haut de ton devis où tu avais inscrit toutes tes listes déroulantes car (et ça n'engage que moi) je trouvais plus judicieux de les mettre directement dans le corps du devis. J'ai considéré que les lignes fonctionnaient par deux, la première ligne indiquant le libellé du lot (par exemple Lot peintures), et la ligne immédiatement en dessous indiquant les différents choix possibles en fonction du choix de la ligne du dessus, ( donc par exemple uniquement les items faisant partie du lot peinture). Pour la première ligne, la formule utilisée dans la source de validation est : =ChoixLot La formule de cette zone nommée est: =DECALER(Lots!$A$2;;;NBVAL(Lots!$A:$A)-1;) Pour la ligne suivante, j'ai placé une liste de validation dont le contenu varie en fonction de ce qui a été choisi sur la ligne précédente, le menu pour y accéder est le même que ci-dessus soit Données/Validation de données/autoriser "Liste", (attention il faut au préalable retirer la fusion de cellules) tu y trouveras la formule suivante: =DECALER(INDIRECT(SUBSTITUE($B18;" ";"_"));1;;NBVAL(INDIRECT(SUBSTITUE($B18;" ";"_")))-1) Une fois ceci fait, tu te promènes dans ton devis, en choisissant ligne 1 ton lot, ligne 2 ton item, ligne 3 un autre lot, etc ... Pour ce qui est des unités, toutes les données étant regroupées dans l'onglet "Lots" j'utilise cette formule pour les retrouver: =SI(B18="";"";RECHERCHEV(B19;INDIRECT("Lots!"&CAR(65+EQUIV($B18;Lots!$1:$1;0)-1)&":"&CAR(65+EQUIV($B18;Lots!$1:$1;0)));2;FAUX)) Tu peux bien sûr consulter la précieuse aide Excel sur ces fonctions, mais tu trouveras également un article ICI et un fichier d'exercices sur la fonction CAR() ICIqui sont assez proches du problème traité et qui pourront sans doute t'aider. La formule de la colonne prix est la même, simplement avec une colonne de plus dans le RECHERCHEV(). Voilà Antoniomiguel, je ne sais si cela s'approche de ce que tu voulais faire mais peut-être y trouveras-tu une petite source d'inspiration pour t'aider. Bon courage pour ton travail et à bientôt, mth |
|
![]() |
![]() ![]() |