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

  1. #1
    Nouveau Candidat au Club
    Insérer [image] contenu dans le dossier customXML
    Bonjour cher communauté,

    J'aurais voulu savoir si il était possible d'insérer une image dans un word contenue dans un dossier du customXML de cette manière.


    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub insertpicture()
     
    Set photo = ActiveDocument.Shapes.AddPicture(Filename:="C:\Users\monnom\Desktop\dossierduword\Template process.docm\customXml\images\image.png", LinkToFile:=False, SaveWithDocument:=True)
    With photo
        .RelativeHorizontalPosition = wdRelativeVerticalPositionPage
        .RelativeVerticalPosition = wdRelativeVerticalPositionPage
        .Left = 100
        .Top = 100
    End With
     
    End Sub



    Bien évidemment celle ci ne fonctionne pas (sinon je ne vous poserais pas la question)

    Merci d'avance pour vos réponces,
    Cordialement, Senji

  2. #2
    Expert éminent sénior
    Citation Envoyé par Senji17 Voir le message

    Bonjour,

    L'insertion se fait avec un InlineShape. Pour l'import, il vaudrait mieux le contrôler avec un signet.
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
     
    Sub InsertPicture()
     
    Dim RepertoireImage As String, NomDeLImage As String
     
    Dim MonImage As InlineShape
    Dim Photo As Shape
     
     
         RepertoireImage = "C:\Users\monnom\Desktop\dossierduword\Template process.docm\customXml\images"
         NomDeLImage = "image.png"
     
         Set MonImage = Selection.InlineShapes.AddPicture(FileName:=RepertoireImage & "\" & NomDeLImage, LinkToFile:=False, SaveWithDocument:=True)
         Set Photo = MonImage.ConvertToShape
         With Photo
              .RelativeHorizontalPosition = wdRelativeVerticalPositionPage
              .RelativeVerticalPosition = wdRelativeVerticalPositionPage
              .Left = 100
              .Top = 100
         End With
     
         Set MonImage = Nothing
         Set Photo = Nothing
     
    End Sub
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  3. #3
    Nouveau Candidat au Club
    Tout d'abord merci pour votre réponse rapide.

    Après essais cela ne fonctionne toujours pas , lorsque le code s'execute celui-ci n'arrive pas à pointer à l'intérieur du .docm (\Template process.docm\customXml\images)


  4. #4
    Expert éminent sénior
    Citation Envoyé par Senji17 Voir le message


    Désolé, je n'avais pas tilté qu'on était dans un document. Comme je suis loin de tout connaître, pouvez-vous expliquer à quel endroit il faut chercher et en joignant un fichier sans données confidentielles ?
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  5. #5
    Nouveau Candidat au Club
    Pas de soucis, je comprends que ma demande n'est pas forcément courante.

    En faite il est possible d'ouvrir n'importe quel word au format zip afin d'atteindre son contenue interne afin d'y apporter des modifications, c'est surtout à la base pour customiser le ruban.



    Mais je voulais savoir si il été possible de pointer sur le dossier dans lequel on a stocker les images afin de les insérer dans le document word.

    Le but est d'avoir un template qui contient des images qui puissent être insérer sur une page de ce même document word quand on le souhaite.

  6. #6
    Expert éminent sénior
    Citation Envoyé par Senji17 Voir le message

    Ok, je ne maîtrise pas du tout cette partie. En tapant custom xml, vba word dans Google, vous allez obtenir des exemples.

    Si l'idée vous prend d'aller explorer les collections pour voir ce que vous pouvez récupérer, utilisez ce genre de code :

    Les collections finissent pas s comme dans CustomXMLParts. En tapant un . après With ActiveDocument, vous avez accès à toutes les propriétés et méthodes.

    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
    18
     
    Sub Test()
     
    Dim I  As Integer
     
       With ActiveDocument
     
       ' Debug.Print .CustomXMLParts.Count
          If .CustomXMLParts.Count > 0 Then
            For I = 1 To .CustomXMLParts.Count
                With .CustomXMLParts(I)
                      Debug.Print .XML
                End With
            Next I
          End If
       End With
     
    End Sub



    Bon courage.
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  7. #7
    Nouveau Candidat au Club
    Après plusieurs essais, et plusieurs recherches , j'ai l'impression qu'avec "customxmlparts" on ne peux que récuperer des attributs contenu dans les fichiers xml, mais pas des images contenues dans les dossiers du docm.

###raw>template_hook.ano_emploi###