Programovo kreslite boxy s kódom - príklady kódu VBA

Krabice na kreslenie VBA s kódom

Existuje mnoho dôvodov, prečo by ste chceli mať možnosť programovo kresliť škatule, automatizovaný Ganttov diagram by bol skvelý? Tu je jeden zo spôsobov, ako to urobiť.

Toto je základný kód na nakreslenie rámčeka:

12345678910 ActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, 0, 0, 48, 12,75). VyberteSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrue

Naozaj to nie je také skľučujúce, existujú iba dve pozoruhodné veci, na ktoré sa treba pozrieť; Schemecolor je očividne farba a 0,0,48,12,75.

Čo je teda 0,0,48,12,75? Jednoducho ľavá pozícia, horná pozícia, šírka a výška. Môžete ich upraviť, ako chcete, úpravou prvých dvoch zmeníte umiestnenie políčka na obrazovke a posledných dvoch zmeníte veľkosť poľa. Tieto rozmery som použil, pretože boli dobrým odhadom na výrobu škatule rovnakej veľkosti ako bunka.

A tu je kód použitý na dynamické vykreslenie zelených políčok na obrázku vyššie:

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 Vedľajšie dynamické boxy ()Dim x As Double„To robí horizontálne boxyPre x = 0 až 240, krok 48„odkaz na 4 čísla vľavo, hore, šírku, výškuActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, x, 0, 48, 12,75). VyberteSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueDalej x„To robí zvislé boxyPre x = 0 až 127,5, krok 12,75ActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, 0, x, 48, 12,75). VyberteSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueDalej xKoniec pod

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave