• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Hücre içine resim çağırma sorunu hakkında.

Katılım
2 Aralık 2013
Mesajlar
401
Excel Vers. ve Dili
Microsoft Office Standard 2013-Türkçe
Arkadaşlar Merhaba, EK' li dosyada " Sorunlu Kamera Görüntüleri" sayfasında E sütununa C sütununda yazan adla aynı olan bilgisayarımda>masaüstünde>Kamera konum resimleri klasörü içindeki resimlerin gelmesini sağlamaya çalışıyorum. Netten izlediğim videodaki makroyu kendi dosyama uyarlamaya çalıştım, maalesef başarılı olamadım. Birde aynı sayfa içinde C sütunundaki formül sorununu çözemedim. Bilgi sahibi ustaların yardımlarını rica ediyorum.

Netten izlediğim videonun linki:
 

Ekli dosyalar

Son düzenleme:
Şu hücre içine resim çağırma mevzusunu kolay pratik bir yolla biri anlatsa herkes için faydalı olacak gibi sanki..
 
Şu hücre içine resim çağırma mevzusunu kolay pratik bir yolla biri anlatsa herkes için faydalı olacak gibi sanki..

Sayın @balanar,
Aslında paylaşılan video gayet anlaşılır ancak ben farkında olmadan bir yerde hata yapıyorum, ne olduğunu bilmiyorum, bu nedenle yardım istedim.
 
Aşağıdaki şekilde deneyin. Yalnız resim isimleri C hücresine birebir yazılmalı.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, [c:c]) 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 = 3 To 156

    Resimyolu = Environ("USERPROFILE") & "\Desktop\Kamera\" & Range("c" & Satır) & ".jpg"
    'ActiveWorkbook.Path & "\" & Range("c" & Satır) & ".jpg"
    If Dir(Resimyolu) <> "" Then
    ' Resim oluştur
        Set Resim = ActiveSheet.Pictures.Insert(Resimyolu)
        
        ' Resim boyutlandır
        
        With Range("e" & Satır)
            Resim.Top = .Top
            Resim.Left = .Left
            Resim.Height = .Height
            Resim.Width = .Width
        End With
    End If

Next Satır
çıkış:
End Sub
 
Aşağıdaki şekilde deneyin. Yalnız resim isimleri C hücresine birebir yazılmalı.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, [c:c]) 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 = 3 To 156

    Resimyolu = Environ("USERPROFILE") & "\Desktop\Kamera\" & Range("c" & Satır) & ".jpg"
    'ActiveWorkbook.Path & "\" & Range("c" & Satır) & ".jpg"
    If Dir(Resimyolu) <> "" Then
    ' Resim oluştur
        Set Resim = ActiveSheet.Pictures.Insert(Resimyolu)
       
        ' Resim boyutlandır
       
        With Range("e" & Satır)
            Resim.Top = .Top
            Resim.Left = .Left
            Resim.Height = .Height
            Resim.Width = .Width
        End With
    End If

Next Satır
çıkış:
End Sub

Sayın @askm ,

Elinize sağlık, çok teşekkür ederim.

"Sorunlu kamera görüntüleri" sayfası B sütunundaki formül sorununa çözüm öneriniz var mı. C Sütununa kamera görüntüsü çağrıldığı zaman " kamera konumları" sayfasındaki B sütunundaki sıra numarası gözüksün, eğer sıra numarası yok ize "Kamera numarası yok" yazsın.
 
1. mesajımdaki dosya içinde "Sorunlu kamera görüntüleri" sayfası B sütunundaki formül sorunu var. C Sütununa kamera görüntüsü çağrıldığı zaman " kamera konumları" sayfasındaki B sütunundaki sıra numarası görülmesine, eğer sıra numarası yok ize "Kamera numarası yok" yazılmasına ihtiyacım var.
 
1. mesajımdaki dosya içinde "Sorunlu kamera görüntüleri" sayfası B sütunundaki formül sorunu var. C Sütununa kamera görüntüsü çağrıldığı zaman " kamera konumları" sayfasındaki B sütunundaki sıra numarası görülmesine, eğer sıra numarası yok ize "Kamera numarası yok" yazılmasına ihtiyacım var.

B3 hücresine şöyle bir formül olabilir.

Kod:
=EĞER(İNDİS('Kamera Konumları'!$B$3:$C$156;KAÇINCI(C3;'Kamera Konumları'!$C$3:$C$156;0);1)=0;"Kamera numarası yok";İNDİS('Kamera Konumları'!$B$3:$C$156;KAÇINCI(C3;'Kamera Konumları'!$C$3:$C$156;0);1))


.
 
B3 hücresine şöyle bir formül olabilir.

Kod:
=EĞER(İNDİS('Kamera Konumları'!$B$3:$C$156;KAÇINCI(C3;'Kamera Konumları'!$C$3:$C$156;0);1)=0;"Kamera numarası yok";İNDİS('Kamera Konumları'!$B$3:$C$156;KAÇINCI(C3;'Kamera Konumları'!$C$3:$C$156;0);1))


.

Sayın @İdris SERDAR,

İhtiyacımı tam olarak karşıladı teşekkür ederim.
 
Geri
Üst