[Word 2016] Afbeelding invoegen met macro / VBA

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • barts81
  • Registratie: Mei 2018
  • Laatst online: 19-01-2022
Goedemorgen,

Op het moment werk ik met een rapportage in excel. Met een button activeer ik een macro waarmee ik
een afbeelding uit de map waarin het excel bestand is opgeslagen kan kiezen. De afbeelding krijgt vervolgens automatisch een grootte en positie.

Hieronder de code die ik gebruik.


Sub afbeelding()
Dim ImgFileFormat As String, pic As Variant
On Error Resume Next
ImgFileFormat = "Image Files jpg (*.jpg),*.jpg,(*.bmp),others, tif (*.tif),*.tif"
ChDrive Left(ThisWorkbook.Path, 3)
ChDir ThisWorkbook.Path
Set pic = ActiveSheet.Pictures.Insert(Application.GetOpenFilename(ImgFileFormat))
Range("B50").Select
Set Rng = ActiveCell
With pic
.Height = 180
.Width = 240
.Left = Rng.Left
.Top = Rng.Top
.Placement = xlMoveAndSize
End With
End Sub


De rapportage wil ik alleen gaan omzetten naar Word. De afbeelding moet komen te staan in een cel van een ingevoerde tabel.
Weet iemand of dat dit mogelijk is?

Ik maak gebruik van Microsoft Office Professional Plus 2016

Groeten Bart

Alle reacties


Acties:
  • 0 Henk 'm!

  • Jester-NL
  • Registratie: Januari 2003
  • Niet online

Jester-NL

... pakt een botte bijl

Je zou kunnen beginnen met botweg testen... Copy/paste... run en dan je resultaat bekijken.
Dan heb je ook resultaten waar je in je vraagstelling naar kunt verwijzen.

Het is een beetje afwachtend neergooien wat je nu doet...

The sky above the port was the color of television, turned to a dead channel
me @ last.fm


Acties:
  • 0 Henk 'm!

  • barts81
  • Registratie: Mei 2018
  • Laatst online: 19-01-2022
Ik heb wat lopen zoeken en testen en met de volgende code lukt het me uiteindelijk om een afbeelding in te voegen in een cel van een tabel in Word.

Sub Foto1()
On Error Resume Next
' Foto1 Macro
Dim FD As FileDialog
Dim strPictureFile As String
Dim wrdDoc As Word.Document
Set FD = Application.FileDialog(msoFileDialogFilePicker)
With FD
.Title = "Selecteer de foto die je wil gebruiken."
.Filters.Clear
.Filters.Add "Pictures", "*.jpg; *.bmp; *.gif; *.tif;"
.AllowMultiSelect = False
If .Show = -1 Then
strPictureFile = .SelectedItems(1)
Else
MsgBox "Je hebt geen foto geselecteerd."
Exit Sub
End If
End With
Set wrdDoc = ActiveDocument
With wrdDoc
.InlineShapes.AddPicture FileName:=strPictureFile, LinkToFile:=False, SaveWithDocument:=True, Range:=Selection.Range
ActiveDocument.InlineShapes(1).ConvertToShape
ZOrder = 1

End With
End Sub


Ik zou alleen graag willen dat bij het activeren van de macro altijd de folder opent waar ook het Word-bestand in staat om een keuze van afbeelding te maken.
Is dit mogelijk. Met de huidige code wordt ook regelmatig een bovenliggende map geopend.