Goedenavond,
Ik heb bijgevoegde VBA script. De volgende uitdaging.
Wanneer D1 wijzigt dan veranderd ook de URL in H18. Wanneer deze wijzigt dan wijzigt ook de foto. Alleen blijft de oude foto onder de nieuwe foto staan.
Nu had ik activesheet.pictures.delete geplaatst vooraan in het script, maar dan verwijderd hij ook het Google logo (zoals in de het voorbeeld).
Hij moet allen de foto in H18 verwijderen en dan de nieuw plaatsen. Het logo van Google moet blijven staan.
Hoe kan ik dit het beste beetpakken?
Ik heb bijgevoegde VBA script. De volgende uitdaging.
Wanneer D1 wijzigt dan veranderd ook de URL in H18. Wanneer deze wijzigt dan wijzigt ook de foto. Alleen blijft de oude foto onder de nieuwe foto staan.
Nu had ik activesheet.pictures.delete geplaatst vooraan in het script, maar dan verwijderd hij ook het Google logo (zoals in de het voorbeeld).
Hij moet allen de foto in H18 verwijderen en dan de nieuw plaatsen. Het logo van Google moet blijven staan.
Hoe kan ik dit het beste beetpakken?
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$1" Then
On Error Resume Next
'activesheet.pictures.delete ==> Staat uit.
Dim Pshp As Shape
Dim xRg As Range
Dim xCol As Long
On Error Resume Next
Application.ScreenUpdating = False
Set rng = ActiveSheet.Range("H18:H18")
For Each cell In rng
filenam = cell
ActiveSheet.Pictures.Insert(filenam).Select
Set Pshp = Selection.ShapeRange.Item(1)
Pshp.Placement = xlMoveAndSize
If Pshp Is Nothing Then GoTo lab
xCol = cell.Column + 1
xRow = cell.Row + 5
Set xRg = Cells(cell.Row, xCol)
With Pshp
.LockAspectRatio = msoFalse
.Width = 350
.Height = 350
.Top = xRg.Top + (xRg.Height - .Height) / 150
.Left = xRg.Left + (xRg.Width - .Width) / 10
End With
lab:
Set Pshp = Nothing
Range("H18").Select
Next
Application.ScreenUpdating = True
End If
End Sub