Kodlu Programlı Kutuları Çiz - VBA Kodu Örnekleri

Kodlu VBA Draw Kutuları

Programlı olarak kutular çizebilmek isteyebileceğiniz birçok neden var, otomatik bir gantt şeması harika olur mu? İşte bunu yapmanın bir yolu.

Bu, bir kutu çizmek için temel koddur:

12345678910 ActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, 0, 0, 48, 12.75).SeçinSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrue

Gerçekten o kadar da göz korkutucu değil, bakılması gereken sadece iki önemli şey var; Schemecolor açıkça renk ve 0,0,48,12.75'tir.

Peki 0,0,48,12,75 nedir? Basitçe Sol Konum, Üst Konum, Genişlik ve Yükseklik. Bunları istediğiniz gibi ayarlayabilirsiniz, ilk ikisini ekrandaki kutuların konumunu değiştirmek için ve son ikisini kutunun boyutunu değiştirmek için ayarlayabilirsiniz. Hücre ile aynı boyutta bir kutu yapmak için iyi bir tahmin oldukları için bu boyutları kullandım.

Ve yukarıdaki resimdeki yeşil kutuları dinamik olarak çizmek için kullanılan kod:

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 Alt Dinamik Kutular()Dim x Çift Olarak'Bu yatay kutular yaparx = 0 ila 240 için Adım 48'sol, üst, genişlik, yükseklik 4 sayıya referansActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, x, 0, 48, 12.75).SeçinSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueSonraki x'Bu dikey kutular yaparx = 0 için 127.5 Adım 12.75ActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, 0, x, 48, 12.75).SeçinSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueSonraki xAlt Bitiş

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave