• DİKKAT

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

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

Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
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
 
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
 
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
 
VBA kodlama ile image nesnesine yada direk hücre içine resmi alabilirsiniz.:cool:
 
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 !
 
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:
 
Önce şunu sorayım.Makro kaydet yöntemini biliyormusunuz?:cool:
 
Ö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ı
 
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
 
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 ?
 
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:
 
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
 
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:
 
Geri
Üst