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

Macros et VBA Excel Discussion :

Insertion image vers Word


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Par défaut Insertion image vers Word
    Bonjour,
    J'ai besoin d'insérer plusieurs photos dans un documents word existant.
    Le problème, c'est que je rencontre un bug dans ma boulce (en sachant que lorsque j'insère une seule photo celà fonctionne, mais à partir de deux photos il bug.
    Voici la partie du code ou j'ai mon bug:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Set DocWord = WrdApp.Documents.Open("C:\Gestionnaire REF\carte membre verso test.doc", ReadOnly:=False)
    z = 1
    For n = 1 To NbreCarte
        On Error Resume Next
        Fichier = "C:\Gestionnaire REF\testpilotageWord.doc"
        DocWord.InlineShapes.AddPicture Filename:= _
        "C:\Gestionnaire REF\Photos\" & NumAdh & ".jpg" 'Image à insérer dans document Word
        On Error GoTo 0
     
        DocWord.InlineShapes(z).Height = 87.99  '<-- bug à ce niveau avec 2 photos à inserer
        DocWord.InlineShapes(z).Width = 72.77
        DocWord.InlineShapes(z).ConvertToShape
        z=z+1
    Next
    Merci de pouvoir m'éclairer un peu plus sur ce problème

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Par défaut
    Problème résolu grace a votre tchat!
    Il suffisait de mettre z=0 et non z=1!

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu mets une gestion d'erreur... or si tu as une erreur, ton image n'est pas insérée et z = z + 1 devient faux
    Teste ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Set DocWord = WrdApp.Documents.Open("C:\Gestionnaire REF\carte membre verso test.doc", ReadOnly:=False)
    For n = 1 To NbreCarte
        On Error Resume Next
        Fichier = "C:\Gestionnaire REF\testpilotageWord.doc"
        DocWord.InlineShapes.AddPicture Filename:= _
        "C:\Gestionnaire REF\Photos\" & NumAdh & ".jpg" 'Image à insérer dans document Word
        On Error GoTo 0
     
        DocWord.InlineShapes(DocWord.InlineShapes.count).Height = 87.99  '<-- bug à ce niveau avec 2 photos à inserer
        DocWord.InlineShapes(DocWord.InlineShapes.count).Width = 72.77
        DocWord.InlineShapes(DocWord.InlineShapes.count).ConvertToShape
    Next
    Et vérifie le nom que tu obtiens avec "C:\Gestionnaire REF\Photos\" & NumAdh & ".jpg" (avec un msgbox, ou avec un Debug.print -> Editeur VBA -> Affichage -> Fenêtre Exécution)
    A+

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Le problème de ta gestion d'erreur reste vrai ! Si tu as une erreur de nom de fichier, z = z + 1 est faux. Utilise DocWord.InlineShapes.count
    A toutes fins utiles

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Par défaut
    Un grand merci à toi ouskel'n'or!!!
    Avec ta réponse ça m'as permis de débloquer toute la partie d'insertion, redimmensionnement et positionnement des images dans word depuis Excel!
    Je galéré dessus depuis quelques jours et commencé à désespérer!!
    Le problème venait bien de la variable "z", et j'ai donc remplacer celle ci par "DocWord.InlineShapes.Count" comme tu me l'as conseillé!
    Une fois que celà fonctionné, j'ai rajouter la fonction pour positionner ces images!
    Voici le code (en espérant que ça seras utilie à d'autre!)

    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
    '***INSERTION DES IMAGES***
            On Error Resume Next
            Fichier = "C:\Gestionnaire REF\testpilotageWord.doc"
            DocWord.InlineShapes.AddPicture Filename:= _
            "C:\Gestionnaire REF\Photos\" & NumAdh & ".jpg" 'Image à insérer dans document Word
            On Error GoTo 0
            'Redimensionnement de l'image
            DocWord.InlineShapes(DocWord.InlineShapes.Count).Height = 87.99 'Longueur
            DocWord.InlineShapes(DocWord.InlineShapes.Count).Width = 72.77 'Largeur
            DocWord.InlineShapes(DocWord.InlineShapes.Count).ConvertToShape
     
            'Positionnement de l'image
            DocWord.Shapes(DocWord.Shapes.Count).Top = 110 'Positionnement Vertical
            DocWord.Shapes(DocWord.Shapes.Count).Left = 210 'Positionnement Horizontal
            DocWord.Shapes(DocWord.Shapes.Count).ZOrder msoBringInFrontOfText  'image au premier plan devant le texte
            'DocWord.Shapes(z).ZOrder msoSendBehindText'option pour image en arriere plan derriere le texte
    Et vive ce forum!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Copie image vers Word et dimension page
    Par raph-68i dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/04/2010, 16h38
  2. [AC-2003] export d'état avec image vers word
    Par garkhan dans le forum Access
    Réponses: 0
    Dernier message: 04/09/2009, 11h32
  3. [POI] insertion image dans WORD
    Par Sirludo002 dans le forum Documents
    Réponses: 6
    Dernier message: 16/03/2009, 14h56
  4. Insert Image Vers Sybase
    Par rafik006 dans le forum Windows Forms
    Réponses: 0
    Dernier message: 18/01/2009, 19h03
  5. export image vers Word
    Par laurent00 dans le forum Access
    Réponses: 2
    Dernier message: 26/01/2007, 15h27

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