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 22/03/2011, 15h19   #1
Invité de passage
 
Homme
Inscription : mars 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : mars 2011
Messages : 8
Points : 0
Points : 0
Par défaut macro de mise en forme d'image

bonjour à tous,

rentrons direct dans le vif du sujet, j'ai de manière très répétitive et régulière, des copier collé d'images à faire depuis powerpoint vers word.

pour ce faire et afin d'avoir une bonne résolution et pour respecter l'alignement dans le document word :

Edition>collage spécial
>Image(métafichier amélioré)
ce qui a pour résultat de me mettre l'image en arrière plan
je sélectionne ensuite l'image et j'ouvre le menu contextuel>format de l'image.

dans l'onglet habillage je sélectionne aligné sur le texte
et dans l'onglet Taille je choisi 60%

j'aimerai donc créer une macro qui me fasse cela de manière automatisée une fois mon image copiée depuis powerpoint.

je n'y connais vraiment rien en VBA et visiblement il n'y as pas le choix,

pourriez vous m'apporter votre aide !
cyrildelaunay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2011, 18h05   #2
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
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 321
Points : 29 220
Points : 29 220
Salut,

As-tu essayé l'enregistreur de macro ?
__________________
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 22/03/2011, 18h22   #3
Membre actif
 
Avatar de Souriane
 
Femme Guylaine C.
Assistant aux utilisateurs
Inscription : septembre 2009
Messages : 157
Détails du profil
Informations personnelles :
Nom : Femme Guylaine C.
Âge : 39
Localisation : Canada

Informations professionnelles :
Activité : Assistant aux utilisateurs
Secteur : Service public

Informations forums :
Inscription : septembre 2009
Messages : 157
Points : 153
Points : 153
Heureux-Oli : Je l'ai essayé mais ça fonctionne pas, ça utilise le code
Code :
Selection.PasteAndFormat (wdPasteDefault)
cyrildelanay, voici ce que j'ai bidulé pour toi :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
Public Sub CollageImageAlignée()
Dim inLargeur As Integer
Dim inHauteur As Integer
 
'Colle ton image en metafile
Selection.PasteSpecial DataType:=wdPasteEnhancedMetafile, _
Placement:=wdInLine
 
'Sélectionne ton image et l'appui sur la marge de droite
    Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend
    Selection.ParagraphFormat.Alignment = wdAlignParagraphRight
 
'Note la hauteur et la largeur d'origine de ton image
inLargeur = Selection.InlineShapes(1).Width
inHauteur = Selection.InlineShapes(1).Height
 
'Donne à ton image la hauteur et la largeur de départ multiplié par 0.6 qui représente 60%
  Selection.InlineShapes(1).Width = inLargeur * 0.6
  Selection.InlineShapes(1).Height = inHauteur * 0.6
 
End Sub
Tu m'en donneras des nouvelles.
Souriane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2011, 18h33   #4
Modérateur
 
Homme Christophe CHAPAT
Spécialiste progiciel
Inscription : février 2010
Messages : 984
Détails du profil
Informations personnelles :
Nom : Homme Christophe CHAPAT
Âge : 25
Localisation : France, Haute Loire (Auvergne)

Informations professionnelles :
Activité : Spécialiste progiciel
Secteur : Service public

Informations forums :
Inscription : février 2010
Messages : 984
Points : 1 592
Points : 1 592
Envoyer un message via MSN à carden752
Bonjour,

Je crois que j'ai un code la dessus,
il me semble que l'enregistreur de macro donne quelque chose de bien et tu peux utiliser les propriétés suivantes

Code :
1
2
3
4
5
 
With ActiveDocument.InlineShapes(1)
.LockAspectRatio=msoCTrue
.Height = .Height * 0.6
End With
__________________
Cordialement,
Christophe

Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche
carden752 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 09h05   #5
Invité de passage
 
Homme
Inscription : mars 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : mars 2011
Messages : 8
Points : 0
Points : 0
Merci beaucoup je teste ça et je vous redis !
cyrildelaunay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/03/2011, 13h52   #6
Invité de passage
 
Homme
Inscription : mars 2011
Messages : 8
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : mars 2011
Messages : 8
Points : 0
Points : 0
ça marche du feu de dieu merci encore !
cyrildelaunay 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 23h30.


 
 
 
 
Partenaires

Hébergement Web