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 11/11/2007, 16h36   #1
Invité régulier
 
Inscription : octobre 2003
Messages : 36
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 36
Points : 6
Points : 6
Par défaut Inserer le N° de page dans une table qui se trouve dans le pied de page

Bonjour à tous

Voila j'ai besoin de piloter Word depuis une application VBNET et je dois entre autre mettre le N° de la page dans un tableau qui se trouve dans le pied de page de ma section 1.

Si jécris cela le N° de la page se met bien dans le pied de page
Code :
oWord.ActiveDocument.Sections(1).Footers(WdHeaderFooterIndex.wdHeaderFooterPrimary).PageNumbers.Add()
Mais si je veux le mettre dans une cellule de mon tableau, alors la j'ai une erreur "Impossible de caster un objet COM ....."
Voici le code pour la table
Code :
 .Tables(1).Cell(2, 2).Range.Text = oWord.ActiveDocument.Sections(1).Footers(WdHeaderFooterIndex.wdHeaderFooterPrimary).PageNumbers
Merci pour votre aide

Et bon Dimanche
WG614 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2007, 18h50   #2
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 354
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 354
Points : 29 270
Points : 29 270
Après quelques essais, voilà ce que j'obtiens.
Pour insérer le numéro de la page, je passe par l'insertion d'un champ.


Code :
1
2
3
4
5
 
ActiveDocument.Sections(1).Footers(wdHeaderFooterPrimary).Range.Select
Selection.Tables(1).Cell(2, 2).Select
Selection.TypeText " "
Selection.Fields.Add Range:=Selection.Range, Text:="PAGE"
__________________
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 12/11/2007, 21h04   #3
Invité régulier
 
Inscription : octobre 2003
Messages : 36
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 36
Points : 6
Points : 6
Par défaut Inserer le N° de page dans une table qui se trouve dans le pied de page

Un grand merci Heureux-oli

J'ai un peu adapté le code pour vbnet mais cela marche.

Code :
1
2
3
4
oWord.ActiveDocument.Sections(1).Footers(WdHeaderFooterIndex.wdHeaderFooterPrimary).Range.Select()
Tables(1).Cell(2, 2).Select()
oWord.Selection.TypeText(" ")
oWord.Selection.Fields.Add(oWord.Selection.Range, , "PAGE")
Je ne connaissais pas ces "fields"


Merci encore
WG614 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 04h55.


 
 
 
 
Partenaires

Hébergement Web