• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Afbeelding ivoegen via macro geeft error

Status
Niet open voor verdere reacties.

Youri92

Gebruiker
Lid geworden
13 jan 2016
Berichten
19
ik heb de volgende macro gemaakt om gemakkelijk een afbeelding in mijn bestand te kunnen zetten, hiermee komt een windows verkenner venster waarmee ik de foto kan selecteren.
Nu heb ik alleen het probleem dat wanneer ik het venster sluit of als ik annuleer ik een fout krijg in VBA. (fout 1004 tijdens invoering, eigenschap insert van klasse kan niet worden opgehaald)
wat moet ik nog in de macro aanpassen?

Sub FitPic()
Dim sPicture As String, pic As Picture

sPicture = Application.GetOpenFilename _
("Pictures (*.gif; *.jpg; *.bmp; *.tif), *.gif; *.jpg; *.bmp; *.tif", _
, "Select Picture to Import")

If sPicture = "False" Then Exit Sub

Set pic = ActiveSheet.Pictures.Insert(sPicture)
With pic
.ShapeRange.LockAspectRatio = msoFalse
.Height = Range("AM2:AQ9").Height
.Width = Range("AM2:AQ9").Width
.Top = Range("AM2:AQ9").Top
.Left = Range("AM2:AQ9").Left
.Placement = xlMoveAndSize
End With

Set pic = Nothing

End Sub
 
Beste,

Door het sluiten van het venster of door het klikken op annuleer veroorzaak je een fout. Die fout kan je "opvangen". Hier vind je voor voorbeeld.
 
Laatst bewerkt:
Een beetje lastig lezen zo zonder codetags! Maar false is een boolean en moet dus niet tussen "" geplaatst worden.

Code:
If sPicture = False Then Exit Sub
 
ik heb zelf niet heel veel ervaring met vba, wat zou ik dan precies moeten neerzetten?
 
sPicture is in deze een variant.
Verwijder 'as string' achter 'Dim sPicture as String'.
Maak van "False" → False (zonder de quotes).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan