Programiškai pieškite dėžutes su kodu - VBA kodo pavyzdžiai

VBA piešimo dėžutės su kodu

Yra daug priežasčių, dėl kurių galbūt norėsite programiškai piešti dėžutes, ar automatinė gantų diagrama būtų šauni? Štai vienas būdas tai padaryti.

Tai yra pagrindinis langelio piešimo kodas:

12345678910 ActiveSheet.Shapes.AddShape _(„msoShapeFlowchartProcess“, 0, 0, 48, 12.75). PasirinkiteSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrue

Tai tikrai nėra taip baisu, reikia atkreipti dėmesį tik į du pastebimus dalykus; Schemos spalva akivaizdžiai yra spalva ir 0,0,48,12.75.

Taigi, kas yra 0,0,48,12,75? Tiesiog kairė padėtis, viršutinė padėtis, plotis ir aukštis. Galite juos koreguoti taip, kaip norite, pakoreguodami pirmuosius du, kad pakeistumėte langelių padėtį ekrane, o antrųjų dviejų - norėdami pakeisti dėžutės dydį. Aš naudojau šiuos matmenis, nes jie buvo geras spėjimas padaryti dėžutę tokio paties dydžio kaip ląstelė.

Čia yra kodas, naudojamas dinamiškai piešti žalias dėžutes aukščiau esančiame paveikslėlyje:

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 Sub DynamicBoxes ()Dim x As Double„Tai sudaro horizontalias dėžesX = 0 iki 240 48 žingsnis“nuoroda į 4 skaičius kairėje, viršuje, plotis, aukštisActiveSheet.Shapes.AddShape _[msoShapeFlowchartProcess, x, 0, 48, 12.75]. PasirinkiteSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueKitas x„Dėl to susidaro vertikalios dėžutėsX = 0 iki 127,5 12.75 žingsnisActiveSheet.Shapes.AddShape _[msoShapeFlowchartProcess, 0, x, 48, 12.75]. PasirinkiteSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueKitas xPabaiga Sub

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave