otomatik şekil ekle

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,420
Excel Vers. ve Dili
excel 2010
merhaba

bir grafik hazırladığımızı düşünecek olursak;
hücre adresini referans vererek dikdörtgen eklemeyi nasıl yapabiliriz?

örnekte D sütununda eklenecek dikdörtgenin başlayacağı sütun no su verilmiş.
ilk sayfada dikdörtgenin ölçüleri sabit alınmış.
ikinci sayfada boy değişken.
1. sayfadaki kodu öğrenebilirsem 2. sayfa için belki kendim düzenleyebilirim.

Sub Add_Rectangle()
ActiveSheet.Shapes.AddShape(msoShapeRectangle, 300, 45, 200, 10).Fill.ForeColor.SchemeColor = 10
End Sub
Range("E3").DirectDependents
gibi E3 hücreye bağlı kal denebilir mi?

ilgilenecek arkadaşlara teşekkürler.
 

Ekli dosyalar

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,595
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba Süleyman bey,

Yaptığım çalışmanın aman aman bir bilimselliği yok ama deneme yanılma yöntemiyle birşeyler bulmaya çalıştım. Tam olarak uymasa bile umarım bir fikir verir.

Kod:
Sub Add_Rectangle()
Dim i, KolonKatSayı, SatırKatSayı, ToplamKolonGenişliği, ToplamSatırYüksekliği, XPoint, YPoint As Double
KolonKatSayı = 5.7
SatırKatSayı = 1.01
For i = 4 To [D65536].End(3).Row
    ToplamSatırYüksekliği = 0
    ToplamKolonGenişliği = 0
 
    For j = 1 To i - 1
        ToplamSatırYüksekliği = ToplamSatırYüksekliği + Cells(j, "d").RowHeight
    Next j
 
    For j = 1 To Cells(i, "D") - 1
        ToplamKolonGenişliği = ToplamKolonGenişliği + Cells(i, j).ColumnWidth
    Next j
 
    XPoint = Round(KolonKatSayı * ToplamKolonGenişliği)
    YPoint = Round(SatırKatSayı * ToplamSatırYüksekliği)
 
        ActiveSheet.Shapes.AddShape(msoShapeRectangle, _
            XPoint, YPoint, 100, 13).Fill.ForeColor.SchemeColor = i
 
Next i
End Sub
 

Ekli dosyalar

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,420
Excel Vers. ve Dili
excel 2010
merhaba
syn Necdet bey, ilginize teşekkür ederim.
dosyayı indiremiyorum ama kod sanırım işimi görecek, akşam daha detaylı kontrol edebilirim.

satır yüksekliği 10,16,20 vs birim olduğu durumda herzaman satırı ortalatabilir miyiz?

aslında bunu kullanacağım dosya çok karışık, hangi sütundan başlayacak, kaç sütun boyunda olacak, rengi ne olacak vs vs çok kriter var.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,595
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba Süleyman bey,

Denemek lazım, ben kendimce satır yüksekliğine ya da sütun genişliğine göre değerler bulmaya çalıştım ama çok ta deneme yapmadım açıkcası.
 
Üst