Die folgenden Beispiele stammen von Bernd Herrmann (veröffentlicht mit freundlicher Genehmigung des Autors):

 

Mit Hilfe einer VBA-Routine ist es möglich, geometrische Formen zu erstellen:



Diese Routine zeichnet ein Polygon:

 

Sub polygon()

Application.ScreenUpdating = False

anzeck = InputBox("Wieviele Ecken ?")

If anzeck = Empty Or Not IsNumeric(anzeck) Or anzeck < 3 Then Exit Sub

seite = InputBox("Seitenlänge ?")

If seite = Empty Or Not IsNumeric(seite) Then Exit Sub

a = 200

ActiveSheet.Drawings.Add(a, a, a + seite, a, False).Select

winkel = 180 - 360 / anzeck

gegenwinkel = 180 - (winkel + 90)

winkel1 = 3.14159265358979 * winkel / 180

gegenwinkel1 = 3.14159265358979 * gegenwinkel / 180

x = a + seite

y = a

k = 1

For i = 1 To anzeck - 1

x = x - k * seite * Sin(gegenwinkel1)

y = y + k * seite * Cos(gegenwinkel1)

Selection.AddVertex x, y

k = k * (-1)

gegenwinkel1 = gegenwinkel1 - winkel1

Next

Application.ScreenUpdating = True

End Sub

 

Und diese Routine zeichnet einen Kreisbogen mit angegebenem Winkel:

 

Sub kreisbogen()

Application.ScreenUpdating = False

winkel = InputBox("Winkel ?")

If winkel = Empty Or Not IsNumeric(winkel) Then Exit Sub

ActiveSheet.Drawings.Add(100, 100, 100, 100, False).Select

For i = 0 To winkel

k = 3.14159265358979 * i / 180

Selection.AddVertex 100 + 100 * Sin(k), 100 + 100 * Cos(k)

i = i + 1

Next

Selection.AddVertex 100, 100

Application.ScreenUpdating = True

End Sub

 

You have no rights to post comments

This website uses cookies to manage authentication, navigation, and other functions. By using our website, you agree that we can place these types of cookies on your device.