excel sayfasında seçimle gelen resimin otomatik boyutlandırılması

Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
elimde aşağıdaki gibi bir kod düzeneği var. bu kod düzeneğine göre seçilen veriye göre B sütunundaki ilgili hücreye resim gelmekte

yalnız boyutlandırma olayı için hücre width ve height boyutuna otomatize etsin istiyorum yani genişlik ve yükeklik ne ise hücrenin resmi ona göre sığdırsın ama bir miktar daraltsın hani bir birim mesela daraltsın istiyorum. bilgi ve yardımlarınızı rica ederim

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [d:d]) Is Nothing Then Exit Sub
On Error GoTo çıkış
Dim ResimYolu As Variant
Dim resim As Object
ActiveSheet.DrawingObjects.Delete
For satır = 29 To 1000
ResimYolu = ActiveWorkbook.Path & "\" & Range("d" & satır) & ".jpg"
Set resim = ActiveSheet.Pictures.Insert(ResimYolu)

With Range("b" & satır)
resim.Top = .Top
resim.Left = .Left
resim.Height = .Height
resim.Width = .Width

End With
Next satı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
Böyle deneyin.:cool:
Kod:
Set resim = ActiveSheet.Pictures.Insert(ResimYolu)

resim.ShapeRange.LockAspectRatio = msoFalse
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
üstadım merhaba peki bu kodda with içerisindeki diğer boyutlandırmaları kullanacakmıyım. ki zten kullanmayınca normal boyutlarda geliyor.
atıyorum hücre B29 ya bu B29 un sütun ve satır genişliği şu şekilde. satır yüksekliği 140 sütun genişliği 25 şeklinde. bu şekilde resimler bu çerçeve içerisine oturuyor. ama ben istiyorum iki eşit oranda 1 pixel daralsın istiyorum ki hücre kenarlıkları görünsün. bu tür bir ölçeklendirme için nasıl bir kod eklemek gerekir. mesela satır yüksekliği 134 sütun genişliği 24 resim haline nasıl getirebiliriz
 

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
üstadım merhaba peki bu kodda with içerisindeki diğer boyutlandırmaları kullanacakmıyım. ki zten kullanmayınca normal boyutlarda geliyor.
atıyorum hücre B29 ya bu B29 un sütun ve satır genişliği şu şekilde. satır yüksekliği 140 sütun genişliği 25 şeklinde. bu şekilde resimler bu çerçeve içerisine oturuyor. ama ben istiyorum iki eşit oranda 1 pixel daralsın istiyorum ki hücre kenarlıkları görünsün. bu tür bir ölçeklendirme için nasıl bir kod eklemek gerekir. mesela satır yüksekliği 134 sütun genişliği 24 resim haline nasıl getirebiliriz
Şöyle deneyin.:cool:

Kod:
resim.Height = .Height -2
resim.Width = .Width -4
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
üstadım emeğinize bilginize sağlık verdiğiniz kod sağ alt köşeden resmi küçültüryordu ama sol üst köşeden kenarlar yine kapalıydı ben ekstaradan aşağıdaki kodları ekledim. o kenarlıklarıda kurtarmış oldum. çok teşekkür ederim

Kod:
resim.Top = .Top + 2
resim.Left = .Left + 4
resim.Height = .Height - 2
resim.Width = .Width - 4
 
Üst