Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1315 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Excel : impression "auto" d'onglets => PDF

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Excel : impression "auto" d'onglets => PDF

n°1899547
NewsletTux
<Insérez ici votre vie />
Posté le 26-06-2009 à 16:15:40  profilanswer
 

Bonjour,
 
j'ai un document Excel qui contient X onglets (des factures  :pt1cable: ) et je souhaite pouvoir faire une macro pour les imprimer.
 
en gros, imprimer X onglets (les onglets sélectionnés p.ex.) et, pour chacun, les faire sortir sur Adobe PDF, chacun dans un PDF séparé.
 
Je ne viens pas les mains vides, j'ai trouvé qq éléments :
 
- pour sélectionner le contenu d'une cellule :

Code :
  1. Range("C14" ).Select
  2. Selection.Copy
  3. Application.CutCopyMode = False


 
compter le nb de feuilles dans un document : FAQ excel
 
pour imprimer :

Code :
  1. ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"


 
ce que je souhaite savoir :
- Une macro générée sur un XLS ouvert dans Excel 2007 sera-t-elle compatible ("exécutable" ) sous Excel 2003 ?
- y a-t-il des sites qui permettent de faire qq tests, je parle pas forcément du "hello world" à la c*n mais ce genre, pour que je suisse le faire pas à pas ?
- comment trouver les paramètres de cette fonction print ?
 
merci d'avance.
 
 


---------------
NewsletTux - outil de mailing list en PHP MySQL
mood
Publicité
Posté le 26-06-2009 à 16:15:40  profilanswer
 

n°1899586
Ptit loup
Quand c'est flou, y'a un loup
Posté le 26-06-2009 à 17:03:25  profilanswer
 

Tu peux avoir des toutes petits incompatibilités au niveau des tes macros entre du 2007 et du 2003 (ça m'est arrivé sur je sais plus quoi... mais vu que ça plantait pas, je l'avais pas vu tout de suite, et c'était plutôt mineur... c'était pour un tri en fait, voilà), mais ça reste des petits trucs.
 
Un site pour faire des tests ? pourquoi ne fais tu pas tes tests tout seul ? je comprends pas...
 
Pour les paramètres, tu fais un F1 quand tu es sur la fonction dans ton code VBA, et là tu as une aide pas trop trop mal fichue.
 
Le plus simple à mon sens, c'est de faire un mix entre ce que tu as déjà, et un enregistrement d'une macro que tu vas faire toi même
(en 2007, onglet développeur, tu enregistres la macro, tu fais ce que tu voudrais que ça fasse (impression d'un onglet en pdf), et ensuite tu arrêtes la macro, et tu regardes le code qu'il a généré... tu t'en inspires, tu le nettoie et adapte à ton cas précis.
 
et hop, ça roule !

n°1899595
NewsletTux
<Insérez ici votre vie />
Posté le 26-06-2009 à 17:49:43  profilanswer
 

salut,
 
Merci d'avoir pris le temps de répondre.
 
ce que j'entends par "site pour faire des tests" c'est un site qui explique des manips pour débugger. Je suis un habitué du PHP et il y a pas mal d'outils PHP pour bébugger, je vais chercher +/- équivalent en VB mais est-ce qu'il y a des sites qui font des tutos pour ça ... mystère.
 
pour les paramètres : ok, c'est vrai que l'aide de windows est en général assez peu loquace, si tu me dis que celle-là est *pas trop mal* alors je vais m'y attarder plus.
 
pour ce que j'ai posté, justement je me suis inspiré d'une macro que j'ai faite, pour laquelle j'ai analysé le code.
 
A suivre au prochain n° ...


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1899613
kiki29
Posté le 26-06-2009 à 19:40:40  profilanswer
 

Salut, Excel 2007 SP2 intègre une sortie xps/pdf ce qui n'est pas le cas des versions antérieures d'Excel
De toute façon la compatibilité est généralement ascendante, pour assurer une compatibilté descendante
Voir http://www.developpez.net/forums/d [...] distiller/ et adapter à ton contexte

n°1899634
NewsletTux
<Insérez ici votre vie />
Posté le 26-06-2009 à 21:19:06  profilanswer
 

Je dois m'absenter une petite semaine. Soyez certain que je vous réponds dès que j'ai du neuf, merci !


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1899995
Ptit loup
Quand c'est flou, y'a un loup
Posté le 29-06-2009 à 09:44:36  profilanswer
 

Jvois pas trop le rapport entre la sortie pdf et la compatibilité.... tu peux nous expliquer kiki ?

n°1900048
NewsletTux
<Insérez ici votre vie />
Posté le 29-06-2009 à 11:20:03  profilanswer
 

il parle de la compatibilité des macros sans doute.
 
J'avais pas pensé à la sortie PDF depuis le SP2, le souci est que chez moi je suis en 2007, mais en entreprise, c'est encore du 2003, et c'est pas encore prévu de migrer tout le monde en 2007...


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1900079
Ptit loup
Quand c'est flou, y'a un loup
Posté le 29-06-2009 à 11:56:43  profilanswer
 

Pour la sortie PDF, tu peux aussi t'appuyer sur le fait d'imprimer sur une imprimante PDF particulière (genre un truc installé en standard dans ta boite ?)

n°1900085
NewsletTux
<Insérez ici votre vie />
Posté le 29-06-2009 à 12:07:51  profilanswer
 

Acrobat 9 standard ;)
 
Mais le souci n'est pas au niveau du PDF, mais bien de générer 1 PDF par onglet (via Acrobat, il y a soit un PDF qui contient le 1er onglet = onglet courant, soit tous les onglets dans un même PDF) et si possible (et c'est là l'intérêt de la macro) de renommer à la volée les PDF générés avec le contenu d'une case + ".PDF".
 
Dans la mesure où c'est une tâche répétitive et conséquente (il n'y a pas que 3 onglets, mais c'est plutôt une 50aine par fichier excel, et il y a régulièrement de nouveaux fichiers, il faut minimiser l'interaction humaine pour réduire le risque d'erreur ...


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1900144
Ptit loup
Quand c'est flou, y'a un loup
Posté le 29-06-2009 à 14:11:03  profilanswer
 

pour le fait de renommer un fichier, tu auras pas de souci de compat' dans les macros... c'est vraiment du standard l'opération sur les fichiers...
 
Pour Acrobat reader 9... ce n'est pas une "imprimante pdf", mais ton reader... moi je te parle de ce qui permet de générer le pdf... mais en fait, est-ce que tu as besoin que ces pdf soient générés sur tous les postes, ou ensuite juste lus ?


Message édité par Ptit loup le 29-06-2009 à 14:12:09
mood
Publicité
Posté le 29-06-2009 à 14:11:03  profilanswer
 

n°1900365
NewsletTux
<Insérez ici votre vie />
Posté le 29-06-2009 à 20:30:11  profilanswer
 

non, je parle bien d'Acrobat 9 standard, pas simplement le "reader". On a payé assez cher pour avoir des licences pour ce truc ...
 
Et grâce à lui il y a de quoi générer des PDF.
Pas spécialement de lecture, c'est juste pour partir d'un gros fichier excel pour en générer 1 PDF par onglet (car 1 onglet = 1 facture). Les PDF seront joints au dossier d'un client par la suite.


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1900371
kiki29
Posté le 29-06-2009 à 20:58:35  profilanswer
 

Salut, donc le lien que j'ai fourni devrait te donner la solution

n°1900407
NewsletTux
<Insérez ici votre vie />
Posté le 29-06-2009 à 23:31:14  profilanswer
 

De mémoire, je ne sais plus si Acrobat 9 est livré avec Distiller ... les version 6 et 7 j'en ai vu trainer sur de vieux PC, donc oui, mais va dire à ton chef "non, non, il te faut un 486 DX2 66, pour générer un pdf c'est mieux que ton core2duo" :pt1cable:
Bon, je ne pourrai tester que la semaine prochaine, mais promis, je te tiens au courant.


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1904075
NewsletTux
<Insérez ici votre vie />
Posté le 09-07-2009 à 14:23:42  profilanswer
 

kiki29 a écrit :

Salut, donc le lien que j'ai fourni devrait te donner la solution


Hello,
je suis en train d'essayer, mais de ce qu'en dit le topic, ça génère un PDF en sortie ... Or moi si j'ai X onglets, je souhaite avoir X PDF.
Je vais voir ce que je peux adapter. Et j'ai Distiller 9.
 
EDIT : ça coince sur la ligne  

Code :
  1. Dim PDFDist As PdfDistiller


l'alerte est :
"erreur de compilation, type défini par l'utilisateur non défini".
et si je commente la ligne, il coince un peu plus bas quand tu instancies un new Distiller()


Message édité par NewsletTux le 09-07-2009 à 14:28:30

---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1904153
kiki29
Posté le 09-07-2009 à 17:22:18  profilanswer
 

Salut, il faut tout lire surtout ce qui est marqué en gras au debut du lien que je t'ai donné

n°1908827
NewsletTux
<Insérez ici votre vie />
Posté le 27-07-2009 à 11:29:12  profilanswer
 

Salut,
je viens de réessayer, je n'y suis pas encore parvenu. Au débogage, il boucle sur la première boucle for. par contre distiller 9 n'a pas l'air d'avoir le bug que j'avais rencontré. Comme je fais ça sur mon temps libre en // de mon plus gros projet, ça prendra du temps ...


---------------
NewsletTux - outil de mailing list en PHP MySQL

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Excel : impression "auto" d'onglets => PDF

 

Sujets relatifs
Récupérzer données CSV dans un Excel[Resolu] [VBA] Macro Excel - Zone de texte
VBA_Excel_ouverture automatique - Résolu(Excel) Deplacement de feuilles pose pb
[VBS][Résolu] Supprimer une ligne dans ExcelCaractère séparateur sous excel VBA
[ VBA ] Afficher sous excel la date & Heure de la derniere sauvegardeErreur Excel nombre de polices [RESOLU]
Export Excel vers Access à l'aide de VBAModifier un PDF avec Javascript
Plus de sujets relatifs à : Excel : impression "auto" d'onglets => PDF


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR