Çözüldü Listedeki isimlerin karşılarına klasörden fotoğraf çekme

  • Konuyu başlatan Konuyu başlatan planyoq
  • Başlangıç tarihi Başlangıç tarihi

planyoq

Normal Üye
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Ekli dosyayı görüntüle 12447
Örnek Resimde belirttiğim gibi masaüstünde FOTO adında bir klasörüm var ve içinde kişilere ait fotoğraflar var karışık bir şekilde içinden eksilenler oldu gelenler oldu o yüzden güncel değil benden bir rapor istediler ve eksik olanları tamamlayarak göndermem lazım ama sayı çok fazla bu yüzden umarım excel ile çözebilirim şimdi sorunum resimde gösterdiğim gibi kişilere ait isim ve tc listesi var kişinin isminini bittiği yere " TC-"ve sonuna tc ekleyerek klasörden aratması bunun için gerçi kısa yol olarak tc ve fotoğraf sütunlarının arasına el ile de birleştirerek arama yaptırabiliriz sonrasında kaldırırım varsa fotoğrafı D sütununda isimin karşısına hücrenin içine sığacak şekilde çağırması mümkün ise çok büyük zahmetten kurtarır beni şimdiden teşekkürler
 
@planyoq

-- Dosya boyutunun gereksiz şişmemesi için bence doğru yöntem,
fotoğrafları hücreye değil hücre açıklamasına eklemek daha doğru.
-- Aşağıdaki kodu kullanabilirsiniz (kod aktif sayfada işlem yapar)
-- Sayfa YAZDIRılacaksa; (açılamalarla, yani fotoğraflarla birlikte yazdırma)
aşağıdaki görselde belirttiğim seçimin yapılması gerekir.


1634887414427.webp


VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(30 satır)
 
Moderatörün son düzenlenenleri:
@planyoq

Önce bundan önceki cevabıma bakınız.

İlle de resimlerin hücreye eklenmesini istiyorsanız şu kodu kullanın.
Resimler hücre boyutlarına göre yeniden boyutlandırılarak hücreye sığdırılır (en x boy oranına göre tabii ki).

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(44 satır)
 
@planyoq

Önce bundan önceki cevabıma bakınız.

İlle de resimlerin hücreye eklenmesini istiyorsanız şu kodu kullanın.
Resimler hücre boyutlarına göre yeniden boyutlandırılarak hücreye sığdırılır (en x boy oranına göre tabii ki).

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(44 satır)
Hocam bi göz atmanız mümkün mü yol kısmını düzenlemeye çalıştım ama ya kod da ya da ben düzenlerken bi hata yaptım çekemiyorum
 

Ekli dosyalar

FOTO klasörüne sağ tıklayıp ÖZELLİKLER'ine baktığınızda gördüğünüz KONUM bilgisini kopyalayıp
ÇİFT TIRNAK arasına yapıştırın. Gerizi zaten benim verdiğim kod.
 
Dediğiniz gibi denedim ama bir yerde hata yapıyorum sanırım hocam mesaj geliyor ekrana iş tamamlandı diye fakat fotoğraf gelmiyor
FOTO klasörüne sağ tıklayıp ÖZELLİKLER'ine baktığınızda gördüğünüz KONUM bilisini kopyalayıp
ÇİFT TIRNAK arasına yapıştırın. Gerizi zaten benim verdiğim kod.
Kodun içindeki şu kısmı atlıyor


With .Cells(sat, 4)
If .Offset(0, -1).Value <> "" Then
tc = "TC-" & .Offset(0, -1).Value
yol_isim_uzanti = yol & "\" & tc & ".jpg"
resim_varmi = dosya.FileExists(yol_isim_uzanti)
If resim_varmi = True Then

Cells(sat, 4).Activate
hg = Cells(sat, 4).Width
hy = Cells(sat, 4).Height
ActiveSheet.Pictures.Insert(yol_isim_uzanti).Select
With Selection
oran = WorksheetFunction.Min((hg - 2) / .Width, (hy - 2) / .Height)
.ShapeRange.ScaleWidth WorksheetFunction.RoundDown(oran, 4), msoFalse, msoScaleFromTopLeft
.Top = Cells(sat, 4).Top + (hy - .Height) / 2
.Left = Cells(sat, 4).Left + (hg - .Width) / 2
.Placement = xlMoveAndSize
End With
End If
End If
End With
Next
 
@Ömer BARAN Hocam kodun şu kısmı

son = .Cells(Rows.Count, 2).End(3).Row
For sat = 12 To son
With .Cells(sat, 4)
If .Offset(0, -1).Value <> "" Then
tc = " TC-" & .Offset(0, -1).Value
yol_isim_uzanti = yol & "\" & tc & ".jpg"

"klasörün yolu\Kişi 1 TC-12345678910.jpg"
Bunu çıkartıyor doğrumuyum acaba çünkü ismi bulamıyor tahminimce
 
@Ömer BARAN Hocam küçük bir sorum daha olucak genel olarak bu işlem işimi gördü fakat bazı kişilerin resimlerini klasörden çekmedi bilgilerini ve resimin uzantısını falan kontrol ettim fakat nedenini bulamadım aklınıza gelen başka bir şey olabilir mi nedenine dair %90 oldu ama bunun gibi %10 luk bir kısım neden ise gelmedi

örnek123.webp
 
Moderatörün son düzenlenenleri:
@planyoq
Sorun yaşanan satırlarda örneğin E sütununa =$B8&"TC-"&$C8 formülünü (satır numarasını kontrol edin tabi) uygulayın,
sorun yaşanan satırlardaki kişiye ait fotoğrafların isimleriyle karşılaştırın.

.
 
Üst