IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

Modifier une série d'images contenues dans un fichier word


Sujet :

VBA Word

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 152
    Points : 57
    Points
    57
    Par défaut Modifier une série d'images contenues dans un fichier word
    Bonjour

    Je cherche un moyen de modifier une série d'images incluses dans un fichier word pour en modifier la taille et la position.
    J'ai donc essayer d'enregistrer une première macro en utilisant le menu Recherche puis Rechercher graphismes.
    Cela à l'air de marcher, je vois les images être sélectionnées une par une mais la macro est vide!!

    Merci pour votre aide.

    Bernard

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

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

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    L'enregistrement d'une macro pour des objets graphiques ne fonctionne pas.

    L'idée serait de faire une boucle sur les deux types d'objets graphiques que l'on rencontre, les InlineShapes et les Shapes.
    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 !

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 152
    Points : 57
    Points
    57
    Par défaut
    Bonjour

    Merci pour l'info.
    Aurais-tu un bout de code pour ces deux objets?

    Merci
    Bernard

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

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

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,


    A la volée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Dim oSH as Shape
    Dim iSH as InlineShape
     
     
    For Each oSh in Activedocument.Shapes
     
        ......
     
    Next oSh
     
    For Each iSH in Activedocument.InlineShapes
     
        ......
     
    Next iSh
    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 !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 152
    Points : 57
    Points
    57
    Par défaut
    Bonjour

    Merci !

    Bernard

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 152
    Points : 57
    Points
    57
    Par défaut
    Bonjour

    Je renvoie mon message qui semble t il n'est pas parti!

    Je reviens vers mon problème que je n'ai pas eu le temps de faire avancer.

    J'ai une série d'images dans un fichier word que je souhaite redimensionner et repositionner dans le texte avec
    Format image/Habillage/Encadré/Droite
    puis
    Format image/Position/ Horizontal/Position absolue/-2 cm à droite de Marge droite
    puis
    Format image/Position/Vertical/Position absolue / 1 cm au desoous de Paragraphe.

    J'ai donc repris le code d'Heureux-Oi en le complétant avec des lignes issues de l'enregistrement.

    La première boucle ne détecte aucune Shape.
    La seconde boucle détecte des InlineShape et redimensionne correctement les images.
    Mais les lignes de code concernant le positionnement donnent des erreurs car les propriétés appelées n'existent que pour des Shapes.
    Donc comment faire?
    J'ai vu dans l'aide que l'on peut convertir une InlineShape en Shape mais qu'il fallait ajouter un noeud ??

    Quelle différence y a t il entre une InlineShape et une Shape?

    Merci pour votre aide.

    Bernard



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Sub RedimensionnerImages()
    Dim oSH As Shape
    Dim iSH As InlineShape
     
    For Each oSH In ActiveDocument.Shapes
        oSH.Select
    Next oSH
     
    For Each iSH In ActiveDocument.InlineShapes
    With iSH
        .Select
        .Height = 30
        .Width = 30
        .RelativeHorizontalPosition = wdRelativeHorizontalPositionColumn
        .RelativeVerticalPosition = wdRelativeVerticalPositionParagraph
    End With
    Next iSH
    End Sub

Discussions similaires

  1. [Lazarus] Récupérer une image contenue dans un fichier XML
    Par Tux74 dans le forum Lazarus
    Réponses: 1
    Dernier message: 13/10/2011, 23h14
  2. Comment lire une image contenue dans un fichier PDF
    Par colorid dans le forum Langage
    Réponses: 1
    Dernier message: 15/05/2009, 19h59
  3. Réponses: 1
    Dernier message: 27/09/2007, 15h31
  4. [Zip] Afficher une image contenue dans un fichier zip
    Par Mister Nono dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 19/03/2007, 08h59
  5. Extraire les images contenues dans un fichier word
    Par elreybubu dans le forum Delphi
    Réponses: 2
    Dernier message: 25/10/2006, 13h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo