Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2008, 14h46   #1
Membre à l'essai
 
Inscription : mai 2005
Messages : 98
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 98
Points : 24
Points : 24
Par défaut Temps de traitement long

Bonjour tout le monde,

j'explique mon problème. Je veux écrire dans un doc word (2003) certaines parties de mon doc Excel que je sélectionne.
Tout va bien, cela fonctionne. Mais le contenu étant très grand, windows met parfois du temps a créeer le fichier word rempli.
Existe-t-il un moyen de réduire ce temps de traitement?

Code :
1
2
3
4
5
6
7
 
    For i = 5 To CountRows
        If (MaFeuille.Cells(i, Col_param).Value = rs_vparam("Valeur")) Then
 
            Docword.Range.Text = Docword.Range.Text + MaFeuille.Cells(i, 1).Value
        End If
    Next
Petite question supplémentaire, comment faire pour rouvrir et reremplir ce même document plus tard sans l'écraser?
Matgic95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2008, 15h19   #2
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 364
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 364
Points : 29 286
Points : 29 286
Tu rencontre un petit problème, lors de chaque écriture, tu reprends le contenu pour lui ajouter ron texte !

Essaie de te déplacer à la fin du documet pour y mettre ton texte.

Code :
1
2
Selection.EndKey unit:=wdStory
selection.TypeText MaFeuille.Cells(i, 1).Value
Pour ouvrir à nouveau ton document, c'est assez simple
Code :
1
2
 
Documents.Open "Lechemindemondocument"
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2008, 15h48   #3
Membre à l'essai
 
Inscription : mai 2005
Messages : 98
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 98
Points : 24
Points : 24
Merci pour ta réponse mais avec tes lignes, il me génère une erreur 438
mais je ne comprend pas bien ces lignes. Tu ne précises pas dedans quel est le document dont on parle? Le selection ne devrait pas représente mon document?
Matgic95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2008, 15h53   #4
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 364
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 364
Points : 29 286
Points : 29 286
N'ayant qu'un morceau de ton code, je ne peux pas te donner avec certitude ce que tu dois mettre.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2008, 15h55   #5
Membre à l'essai
 
Inscription : mai 2005
Messages : 98
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 98
Points : 24
Points : 24
Je viens de voir que ton code s'appliquait à word.application or moi je ne me servait que d'un word.document
Je vais continuer a regarder un peu
Matgic95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2008, 16h00   #6
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 364
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 364
Points : 29 286
Points : 29 286
Mon code s'applique à un objet selection d'un document Word.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2008, 11h03   #7
Membre à l'essai
 
Inscription : mai 2005
Messages : 98
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 98
Points : 24
Points : 24
Merci ca fonctionne
Code :
1
2
3
4
5
6
 
If (MaFeuille.Cells(i, Col_param).Value <> rs_vparam("Valeur")) Then
            Docword.Application.selection.EndKey unit:=wdStory
            Docword.Application.selection.TypeText vbCrLf
            Docword.Application.selection.TypeText MaFeuille.Cells(i, 1).Value
        End If
Matgic95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h54.


 
 
 
 
Partenaires

Hébergement Web