Merhabalar.
Bir çalışmamız var. Örnek olarak A21 hücresinde ki veriye göre B21 hücresine resim çağırıyor. Fakat A21'de ki veri silindiğinde tüm resimleri siliyor. Fakat ben sadece B21 hücresinde ki veri silinsin istiyorum. Gerekli düzenleme için yardımcı olabilir misiniz ?
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [a:a]) Is Nothing Then Exit Sub
' hata kontrolü
On Error GoTo çıkış
'resimleri Sil
ActiveSheet.DrawingObjects.Delete
'Resim yolunun bulunması
Dim ResimYolu As Variant
Dim Resim As Object
For satır = 21 To 100
ResimYolu = ActiveWorkbook.Path & "\" & Range("a" & satır) & ".jpg"
'Resmi oluştur
Set Resim = ActiveSheet.Pictures.Insert(ResimYolu)
'Resmi boyutlandır
With Range("b" & satır)
Resim.Top = .Top + 5
Resim.Left = .Left + 2
Resim.Height = .Height - 5
Resim.Width = .Width - 5
End With
Next satır
çıkış:
End Sub
Bir çalışmamız var. Örnek olarak A21 hücresinde ki veriye göre B21 hücresine resim çağırıyor. Fakat A21'de ki veri silindiğinde tüm resimleri siliyor. Fakat ben sadece B21 hücresinde ki veri silinsin istiyorum. Gerekli düzenleme için yardımcı olabilir misiniz ?
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [a:a]) Is Nothing Then Exit Sub
' hata kontrolü
On Error GoTo çıkış
'resimleri Sil
ActiveSheet.DrawingObjects.Delete
'Resim yolunun bulunması
Dim ResimYolu As Variant
Dim Resim As Object
For satır = 21 To 100
ResimYolu = ActiveWorkbook.Path & "\" & Range("a" & satır) & ".jpg"
'Resmi oluştur
Set Resim = ActiveSheet.Pictures.Insert(ResimYolu)
'Resmi boyutlandır
With Range("b" & satır)
Resim.Top = .Top + 5
Resim.Left = .Left + 2
Resim.Height = .Height - 5
Resim.Width = .Width - 5
End With
Next satır
çıkış:
End Sub