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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Macro trop lente, optimisation du code

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Macro trop lente, optimisation du code

n°2286639
gollum38
Posté le 18-08-2016 à 14:23:29  profilanswer
 

Bonjour,
 
Actuellement j'essaye de copier des tableaux excel et de les coller puis les mettre en forme sous word. Mais la macro est bien trop longue (environ 10 secondes)
Je debute sous vba, aussi je me suis renseigné à droite et à gauche pour reduire le temps des macros. J'ai desactivé de nombreuses choses notamment l'affichage. Mais je ne parviens pas à réécrire le code ci-dessous sans l'utilisation de la methode Selection (qui il me semble est très gourmande)
 
Voici une partie du code qui pose probleme
Pour comprendre "ma logique" vu que je debute..et que celà ressemble plus à du charcutage qu'autre chose, le document final doit ressembler à ça
Titre
Sous titre 1
Tableau 1
Sous titre 2
Tableau 2
Sous titre 3
Tableau 3  
 

Code :
  1. wordapp.Selection.TypeText (Titredudocument)
  2. worddoc.Paragraphs(1).Format.Alignment = 1
  3. worddoc.Paragraphs(1).Range.Font.Size = 18
  4. wordapp.Selection.TypeParagraph
  5. worddoc.Paragraphs(2).Range.Font.Size = 14
  6. worddoc.Paragraphs(2).Range.ParagraphFormat.SpaceAfter = 1
  7. worddoc.Paragraphs(2).Range.Font.Bold = True
  8. worddoc.Paragraphs(2).Format.Alignment = 0
  9. wordapp.Selection.TypeText (soustitretableau1)
  10. Range(Rangetableau1).Copy
  11. wordapp.Selection.Paste
  12. wordapp.Selection.TypeText (soustitretableau2)
  13. Range(Rangetableau2).Copy
  14. wordapp.Selection.Paste
  15. wordapp.Selection.TypeText (soustitretableau3)
  16. Range(Rangetableau3).Copy
  17. wordapp.Selection.Paste


 
Je vous remercie d'avance

mood
Publicité
Posté le 18-08-2016 à 14:23:29  profilanswer
 

n°2286648
kiki29
Posté le 18-08-2016 à 15:48:40  profilanswer
 

Salut, qqs infos, peut-être,  ici : http://www.developpez.net/forums/d [...] post417934


Message édité par kiki29 le 18-08-2016 à 15:49:29

---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
n°2286659
gollum38
Posté le 18-08-2016 à 23:23:30  profilanswer
 

merci pour le lien, j'ai eu pas mal d'informations..qui m'auraient aidé il y a quelques jours. Par contre, ça ne m'aide pas vraiment actuellement  :sweat:

n°2290611
x140hu4
Posté le 24-10-2016 à 21:05:04  profilanswer
 

Utilise peut etre un dictionnaire ou un array? Si tu arrives toujours pas, peux tu mettre un fichier d'exemple?

n°2290678
rufo
Pas me confondre avec Lycos!
Posté le 26-10-2016 à 10:56:52  profilanswer
 

Dans Excel, essaye de désactiver le recalcul automatique des cellules. C'est peut-être ça qui ait perdre du temps.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

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

  Macro trop lente, optimisation du code

 

Sujets relatifs
VBA: Macro avec Outlook pour gestion d'eventsMacro copy/send qui fonctionnait sur XP et plus sur Windows 7
récupérer son code CSS sur blogspot.comVBA - appliquer ce code à deux graph au lieu de un
Decryptage code PHPonglet exel caché avec code et accès avec utilisateur
macroAide code C++ faire un rectangle ( noob )
[VB/VBA/VBS] Macro excel d’impression sur plusieurs feuilles.Macro générer fichier excel avec info dans l'ordre
Plus de sujets relatifs à : Macro trop lente, optimisation du code


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