Excel Sayfasındaki Resime, Klasör içinden bir resim atamak

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba Arkadaşlar,

Bir excel sayfamda vesikalık resim boyutunda bir resim var. bu resme formül ile görüntü atayabiliyorum. Bunda sorun yok. Ama istiyorum ki Exceldeki resme aşağıda adresi belirtilen resmi bağlamak mümkün mü ?

C:\SUNUM\resim1.jpg
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba Arkadaşlar,

Bir excel sayfamda vesikalık resim boyutunda bir resim var. bu resme formül ile görüntü atayabiliyorum. Bunda sorun yok. Ama istiyorum ki Exceldeki resme aşağıda adresi belirtilen resmi bağlamak mümkün mü ?

C:\SUNUM\resim1.jpg
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba Arkadaşlar,

Bir excel sayfamda vesikalık resim boyutunda bir resim var. bu resme formül ile görüntü atayabiliyorum. Bunda sorun yok. Ama istiyorum ki Exceldeki resme aşağıda adresi belirtilen resmi bağlamak mümkün mü ?

C:\SUNUM\resim1.jpg
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
VBA kodlama ile image nesnesine yada direk hücre içine resmi alabilirsiniz.:cool:
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
VBA kodlama ile image nesnesine yada direk hücre içine resmi alabilirsiniz.:cool:
Üstad çok teşekkür ederim. Bir kod buldum, uyguladım oldu. ama şöyle bir sorun var. Daha doğrusu şimdilik sorun değil ama belki ileride olabilir.
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
VBA kodlama ile image nesnesine yada direk hücre içine resmi alabilirsiniz.:cool:
With Range("D5")
Resim.Top = .Top
Resim.Left = .Left
Resim.Width = .Width
Resim.Height = .Height
End With

şimdi bu kodda resim yüksekliğini bir üst satıra alınca çağırdığı resmin yüksekliğini satır yüksekliğine göre ayarlıyor. ama bu sefer resim genişse genişlik hücre genişliğinden taşıyor. buna bir çere var mı ?
yani çağrılan resim atandığı hücre boyutu içinde kalsın diye !
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
With Range("D5")
Resim.Top = .Top
Resim.Left = .Left
Resim.Width = .Width
Resim.Height = .Height
End With

şimdi bu kodda resim yüksekliğini bir üst satıra alınca çağırdığı resmin yüksekliğini satır yüksekliğine göre ayarlıyor. ama bu sefer resim genişse genişlik hücre genişliğinden taşıyor. buna bir çere var mı ?
yani çağrılan resim atandığı hücre boyutu içinde kalsın diye !
Bu kodu makro kaydet yöntemi ile bulabilirsiniz.
Yapamazsanız ben kodu veririm.:cool:
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Bu kodu makro kaydet yöntemi ile bulabilirsiniz.
Yapamazsanız ben kodu veririm.:cool:
Üstadım cahilliğimi mazuır görün lütfen "Bu kodu makro kaydet yöntemi ile bulabilirsiniz." derken neyi kastettiğiniz çözümleyemedim :)
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Önce şunu sorayım.Makro kaydet yöntemini biliyormusunuz?:cool:
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Önce şunu sorayım.Makro kaydet yöntemini biliyormusunuz?:cool:
teşekkürler üstad. Makro kaydetmeyi biliyorum, yazı uzun olmasın diye kodun bir bölümünü yazdım sadece.
kod gayet güzel çalışıyor. o açıdan sorun yok. tek derdim gelen resmin eb/boy orantısı aynen kalarak hücre yükseklşik ve genişliğine adapte olması
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Makro kaydet yöntemi ile aşağıdaki kodu elde ettim.:cool:
Kod:
Selection.ShapeRange.LockAspectRatio = msoFalse
Sizin kodunuza uyarlayınca aşağıdaki gibi oldu.:cool:
Kod:
With Range("D5")
Resim.ShapeRange.LockAspectRatio = msoFalse
Resim.Top = .Top
Resim.Left = .Left
Resim.Width = .Width
Resim.Height = .Height
End With
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Makro kaydet yöntemi ile aşağıdaki kodu elde ettim.:cool:
Kod:
Selection.ShapeRange.LockAspectRatio = msoFalse
Sizin kodunuza uyarlayınca aşağıdaki gibi oldu.:cool:
Kod:
With Range("D5")
Resim.ShapeRange.LockAspectRatio = msoFalse
Resim.Top = .Top
Resim.Left = .Left
Resim.Width = .Width
Resim.Height = .Height
End With
Üstad çok teşekkür ediyorum. Müthiş oldu şimdi.
bu haliyle hücre boyutunu tam kaplıyor.
meraktan soruyorum resmin orjinal en/boy oranını muhafaza edecek şekilde hücre sınırları içine yerleşmesi mümkün müdür ?
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
O zaman yazdığım sütunu silin.
Bu seferde tam hücreye oturmaz.
Ya enden yada boydan uyar.Bir taraftan uyarsa diğer taraftan uymaz.:cool:
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
O zaman yazdığım sütunu silin.
Bu seferde tam hücreye oturmaz.
Ya enden yada boydan uyar.Bir taraftan uyarsa diğer taraftan uymaz.:cool:
Teşekkürler üstadım, çok sağolun, sağlıcakla kalın.
 

tugkan

Altın Üye
Katılım
6 Kasım 2004
Mesajlar
354
Excel Vers. ve Dili
Excel 2016
Türkçe 64 BIT
Altın Üyelik Bitiş Tarihi
16-10-2025
Merhaba,
B sütunundaki hücrelerde yazan resim adına göre sizin belirttiğiniz klasörden resimleri F sütunundaki hücrelere getirir. Yalnız kodu her çalıştırdığınızda önce sayfadaki resimleri siler.

Kod:
Private Sub MAKRO1()
ActiveSheet.DrawingObjects.Delete

Dim x

For i = 1 To 100

x = i * 1

Cells(x, "F").Select
resimadi = LoadPicture("")
resimadi = Cells(x, "B").Text & ".jpg"
On Error Resume Next
ActiveSheet.Pictures.Insert("C:\SUNUM\" & resimadi).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 50
Selection.ShapeRange.Width = 110
Selection.ShapeRange.Rotation = 0#
Selection.ShapeRange.IncrementLeft 0.49
Selection.ShapeRange.IncrementTop 0.31

Next

End Sub
 

tugkan

Altın Üye
Katılım
6 Kasım 2004
Mesajlar
354
Excel Vers. ve Dili
Excel 2016
Türkçe 64 BIT
Altın Üyelik Bitiş Tarihi
16-10-2025
Merhaba,
B sütunundaki hücrelerde yazan resim adına göre sizin belirttiğiniz klasörden resimleri F sütunundaki hücrelere getirir. Yalnız kodu her çalıştırdığınızda önce sayfadaki resimleri siler.

Kod:
Private Sub MAKRO1()
ActiveSheet.DrawingObjects.Delete

Dim x

For i = 1 To 100

x = i * 1

Cells(x, "F").Select
resimadi = LoadPicture("")
resimadi = Cells(x, "B").Text & ".jpg"
On Error Resume Next
ActiveSheet.Pictures.Insert("C:\SUNUM\" & resimadi).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 50
Selection.ShapeRange.Width = 110
Selection.ShapeRange.Rotation = 0#
Selection.ShapeRange.IncrementLeft 0.49
Selection.ShapeRange.IncrementTop 0.31

Next

End Sub
Bek baktığımda "0" cevap görünüyordu. Cevap yazdıktan sonra baktım benden daha önce cevaplanmış :rolleyes:
 
Üst