- Katılım
- 11 Mart 2005
- Mesajlar
- 3,158
- Excel Vers. ve Dili
- Office 2013 İngilizce
Merhaba,
Aşağıdaki kod ile hücreye küçük resim ekliyorum, eklenen görseli ilgili hücrenin satır yüksekliğine göre boyutlandırıyor.
Yalnız eklenen görselin yatay boyutu, dikey boyutuna göre çok fazla olduğu zaman (ekli resim); bu sefer resim yatayda hücreyi taşıyor.
Resmi boyutlandırırken görselin eni hücrenin genişliğine gelince boyutlandırmayı bitirsin.
Özetle boyutlandırma esnasında dikey yada yatayda hangisi hücrenin boyutuna önce gelirse, boyutlandırma sonlandırılsın, görsel yatay veya dikeyde hücreyi aşmasın.
Teşekkürler,
iyi akşamlar.
Aşağıdaki kod ile hücreye küçük resim ekliyorum, eklenen görseli ilgili hücrenin satır yüksekliğine göre boyutlandırıyor.
Yalnız eklenen görselin yatay boyutu, dikey boyutuna göre çok fazla olduğu zaman (ekli resim); bu sefer resim yatayda hücreyi taşıyor.
Resmi boyutlandırırken görselin eni hücrenin genişliğine gelince boyutlandırmayı bitirsin.
Özetle boyutlandırma esnasında dikey yada yatayda hangisi hücrenin boyutuna önce gelirse, boyutlandırma sonlandırılsın, görsel yatay veya dikeyde hücreyi aşmasın.
Teşekkürler,
iyi akşamlar.
Kod:
Sub TestInsertPictureInRange()
InsertPictureInRange "C:\Users\xxxxxx\Pictures\yyyyy\zzzzzz\L-123.jpg", _
Range("E15")
End Sub
Sub InsertPictureInRange(PictureFileName As String, TargetCells As Range)
' inserts a picture and resizes it to fit the TargetCells range
Dim p As Object, t As Double, l As Double, w As Double, h As Double
If TypeName(ActiveSheet) <> "Worksheet" Then Exit Sub
If Dir(PictureFileName) = "" Then Exit Sub
' import picture
Set p = ActiveSheet.Pictures.Insert(PictureFileName)
' determine positions
With TargetCells
t = .Top
l = .Left
w = .Offset(0, .Columns.Count).Left - .Left
h = .Offset(.Rows.Count, 0).Top - .Top
End With
' position picture
With p
.Top = t
.Left = l
.Width = w
.Height = h
End With
Set p = Nothing
End Sub
Ekli dosyalar
-
24.9 KB Görüntüleme: 13