Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

vba, se placer dans l'en-tête d'un document

4 réponses
Avatar
maxou07
Bonjour,
pour insérer une image dans une cellule de tableau, je fais comme ceci:
ActiveDocument.Tables(1).Cell(1, 1).Range.InlineShapes.AddPicture ("C:\Mes
Documents\Mes images\image5.jpg")

mais je n'arrive pas à me mettre dans un tableau qui serit dans l'en-tête du
document.
Pourriez-vous me dire comment faire ?
merci d'avance
maxou

4 réponses

Avatar
heureux-oli
Tu dois en premier ouvrir l'en-tête de ton document et ensuite aller dans la
table

ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Select
Selection.Tables(1).Cell(1, 1).Range.Text = "Moi"

Il faut passer par une sélection.
--
Heureux-oli
http://heureuxoli.developpez.com/

----------------------------------------------------------------------------------

"maxou07" a écrit dans le message de news:
47b2aff8$0$832$
Bonjour,
pour insérer une image dans une cellule de tableau, je fais comme ceci:
ActiveDocument.Tables(1).Cell(1, 1).Range.InlineShapes.AddPicture ("C:Mes
DocumentsMes imagesimage5.jpg")

mais je n'arrive pas à me mettre dans un tableau qui serit dans l'en-tête
du
document.
Pourriez-vous me dire comment faire ?
merci d'avance
maxou




Avatar
Anacoluthe
Bonjour !

'heureux-oli' nous a écrit ...
Il faut passer par une sélection.


?????? OH non Olivier SURTOUT PAS :-D

En VBA Word au contraire il faut absolument éviter de sélectionner !!!

L'objet Selection se rapporte à une fenêtre où l'objet doit être
'sélectionnable'. D'où des modifications parfois intempestives
dans l'affichage des fenêtres. Par ailleurs l'objet Selection
qui ne concerne que l'utilisateur est extrêmement réducteur.

Le code demandé par Maxou se passe très bien de Selection
et s'écrit avec UNE seule instruction vba :

ActiveDocument.Sections(1).Headers(1).Range. _
Tables(1).Cell(1,1).Range.InlineShapes.AddPicture _
"C:Mes DocumentsMes imagesimage5.jpg"

Anacoluthe
« La vraie question est : pourquoi sélectionner?
Et je ne connais pas la réponse. »
- Albert JACQUARD

Avatar
heureux-oli
Tu as raison, lorsque je l'ai écrit, j'ai oublié le range et de ce fait il
n'est pas passé.

Et c'est ensuite que j'ai utilisé la sélection.
J'évite autant que possible la sélection, mais c'est parfois salvateur.

Toutes mes excuses.

--
Heureux-oli
http://heureuxoli.developpez.com/

----------------------------------------------------------------------------------

"Anacoluthe" a écrit dans le message de news:

Bonjour !

'heureux-oli' nous a écrit ...
Il faut passer par une sélection.


?????? OH non Olivier SURTOUT PAS :-D

En VBA Word au contraire il faut absolument éviter de sélectionner !!!

L'objet Selection se rapporte à une fenêtre où l'objet doit être
'sélectionnable'. D'où des modifications parfois intempestives
dans l'affichage des fenêtres. Par ailleurs l'objet Selection
qui ne concerne que l'utilisateur est extrêmement réducteur.

Le code demandé par Maxou se passe très bien de Selection
et s'écrit avec UNE seule instruction vba :

ActiveDocument.Sections(1).Headers(1).Range. _
Tables(1).Cell(1,1).Range.InlineShapes.AddPicture _
"C:Mes DocumentsMes imagesimage5.jpg"

Anacoluthe
« La vraie question est : pourquoi sélectionner?
Et je ne connais pas la réponse. »
- Albert JACQUARD




Avatar
maxou07
Bonjour,
merci pour vos réponses.
en me basant sur les macros, j'ai fait ceci:

XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
If ActiveWindow.View.SplitSpecial <> wdPaneNone Then
ActiveWindow.Panes(2).Close
End If
If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _
ActivePane.View.Type = wdOutlineView Then
ActiveWindow.ActivePane.View.Type = wdPrintView
End If
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
' ***************************
' ne mettre dans cette section que les champs qui vont
' dans l'entete du document
' ***************************
CheminImage = LireCleIni("LISTE", "CheminImage", CheminIni)
Selection.Font.Size = 14
Selection.Font.Name = "Arial"
Selection.TypeParagraph
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
Selection.InlineShapes.AddPicture FileName:= _
CheminImage, LinkToFile:= _
False, SaveWithDocument:=True
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
à bientôt
maxou



"heureux-oli" a écrit dans le message de
news:
Tu as raison, lorsque je l'ai écrit, j'ai oublié le range et de ce fait il
n'est pas passé.

Et c'est ensuite que j'ai utilisé la sélection.
J'évite autant que possible la sélection, mais c'est parfois salvateur.

Toutes mes excuses.

--
Heureux-oli
http://heureuxoli.developpez.com/

--------------------------------------------------------------------------
--------


"Anacoluthe" a écrit dans le message de
news:


Bonjour !

'heureux-oli' nous a écrit ...
Il faut passer par une sélection.


?????? OH non Olivier SURTOUT PAS :-D

En VBA Word au contraire il faut absolument éviter de sélectionner !!!

L'objet Selection se rapporte à une fenêtre où l'objet doit être
'sélectionnable'. D'où des modifications parfois intempestives
dans l'affichage des fenêtres. Par ailleurs l'objet Selection
qui ne concerne que l'utilisateur est extrêmement réducteur.

Le code demandé par Maxou se passe très bien de Selection
et s'écrit avec UNE seule instruction vba :

ActiveDocument.Sections(1).Headers(1).Range. _
Tables(1).Cell(1,1).Range.InlineShapes.AddPicture _
"C:Mes DocumentsMes imagesimage5.jpg"

Anacoluthe
« La vraie question est : pourquoi sélectionner?
Et je ne connais pas la réponse. »
- Albert JACQUARD