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 13/06/2007, 22h13   #1
Nom
Membre habitué
 
Inscription : octobre 2005
Messages : 528
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 528
Points : 143
Points : 143
Par défaut Nombre de page d'un document word

Bonjour,
Je vous sollicite pour une question toute bête.
J’aimerai récupérer le nombre de page d’un document Word pour l’utiliser dans une macro d’un fichier Excel. (Mon nombre de page du document Word correspond aux nombres de lignes que je dois traiter sur le document Excel)

J’ai fait une recherche et j’ai trouvé ceci : http://vb.developpez.com/faq/?page=word#nbpagedocword

Ca me parait bien compliqué pour moi et pour ce que je veux faire. N’y a-t-il pas plus simple ?
Nom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2007, 23h32   #2
Modérateur
 
Avatar de mout1234
 
Inscription : novembre 2006
Messages : 2 200
Détails du profil
Informations personnelles :
Âge : 43
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2006
Messages : 2 200
Points : 2 699
Points : 2 699
Bonsoir,

Je ne crois pas qu'il y ait plus simple.
D'ailleurs, est-ce vraiment compliqué?

Dans cette fonction, il n'y a finalement que 3 instructions majeures
Code :
1
2
3
4
5
6
7
8
9
 
'on lance Word 
Set objWord = CreateObject("Word.Application")    '-- ouvrir une session Word
 
'on ouvre le document
Set docWord = objWord.Documents.Open(sDoc)    '-- ouvrir le document Word
 
'on récupère la valeur recherchée
NombrePagesDocWord = docWord.builtinDocumentProperties("Number of Pages")
'on referme le doc et Word...
__________________
............................................................................................

Dans l'intérêt de tous, ne posez pas de questions techniques par messages privés.


Les FAQs les tutos Les Sources Access Profitez de ces mines d'or...

Postez dans le bon sous forum et mentionnez la version
mout1234 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2007, 12h53   #3
Nom
Membre habitué
 
Inscription : octobre 2005
Messages : 528
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 528
Points : 143
Points : 143
en effet ca parait plutot simple mais ca fonctionne mal pour moi

comme j'ai fais un petit traitement je vous met le code :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
Sub Macro1()
 
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Dim i As Integer, j As Integer
 
 
    Set WordApp = CreateObject("word.application")
    WordApp.Visible = False    'Word reste masqué pendant l'opéraion
    Set WordDoc = WordApp.Documents.Open("h:\monDocument.doc")    'ouvre le document Word
    NombrePagesDocWord = docWord.BuiltinDocumentProperties("Number of Pages")
    j = 2
    For i = 1 To NombrePagesDocWord
        'copie du document word
            WordDoc.Tables(j).Rows(4).Range.Copy
 
        'collage dans Excel
        Cells(i, 1).PasteSpecial xlPasteValues
        j = j + 5
    Next i
 
    WordDoc.Close    'fermeture document Word
    WordApp.Quit    'fermeture session Word
 
 
 
End Sub
en fesant ca me remonte une erreur au niveau de la récupération du nombre de page : objet requis
Nom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/06/2007, 13h18   #4
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 352
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 352
Points : 29 265
Points : 29 265
pour compter le nombre de page, utilise cette méthode

Code :
intPages = ActiveDocument.ActiveWindow.Panes(1).Pages.Count
__________________
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
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h35.


 
 
 
 
Partenaires

Hébergement Web