Boxen mit Code programmgesteuert zeichnen - VBA-Codebeispiele

Inhaltsverzeichnis

VBA Draw Boxen mit Code

Es gibt viele Gründe, warum Sie Boxen programmatisch zeichnen möchten, ein automatisiertes Gantt-Diagramm wäre cool? Hier ist eine Möglichkeit, dies zu tun.

Dies ist der grundlegende Code zum Zeichnen einer Box:

12345678910 ActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, 0, 0, 48, 12.75).AuswählenSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrue

Es ist wirklich nicht so entmutigend, es gibt nur zwei bemerkenswerte Dinge zu beachten; Schemecolor ist offensichtlich die Farbe und die 0,0,48,12,75.

Was ist also 0,0,48,12,75? Einfach die linke Position, obere Position, Breite und Höhe. Sie können diese nach Belieben anpassen, indem Sie die ersten beiden anpassen, um die Position der Boxen auf dem Bildschirm zu ändern, und die letzten beiden, um die Größe der Box zu ändern. Ich habe diese Abmessungen verwendet, weil sie eine gute Vermutung waren, um eine Box mit der gleichen Größe wie eine Zelle zu machen.

Und hier ist der Code, der verwendet wird, um die grünen Kästchen im obigen Bild dynamisch zu zeichnen:

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 Unter DynamicBoxes()Dim x als Double'Das macht horizontale KästenFür x = 0 bis 240 Schritt 48'Verweis auf die 4 Zahlen links,oben,Breite,HöheActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, x, 0, 48, 12.75).AuswählenSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueNächstes x'Das macht vertikale KästchenFür x = 0 bis 127,5 Schritt 12,75ActiveSheet.Shapes.AddShape _(msoShapeFlowchartProcess, 0, x, 48, 12.75).AuswählenSelection.ShapeRange.Fill.ForeColor.SchemeColor = 11Selection.ShapeRange.Fill.SolidSelection.ShapeRange.Fill.Visible = msoTrueNächstes xEnd Sub

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave