ich möchte als eine Ausbaustufe eines kleinen Projekts mittels Diagramm einen
Kreis zeichnen. Dieser soll sich aber langsam aufbauen, wie eine Animation.
Wer kann mir da Hinweise geben?
Grüße Frank
Option Explicit
Declare Sub Sleep Lib "Kernel32" (ByVal mS As Long)
Sub Kreis_animiert()
Const P As Double = 3.14159265358979 / 180
Dim w As Integer, Dia As Chart, arrX(36), arrY(36), ShName As String
ShName = ActiveSheet.Name
Set Dia = Sheets(ShName).ChartObjects(1).Chart
For w = 0 To 36
arrX(w) = Round(Cos(w * 10 * P), 4)
arrY(w) = Round(Sin(w * 10 * P), 4)
Dia.SeriesCollection(1).XValues = arrX
Dia.SeriesCollection(1).Values = arrY
Sleep 100 'Wert erhöhen für langsameren Aufbau
DoEvents
Next
'Wenn der Kreis ausgeblendet werden soll
'Sleep 1000
'Dia.SeriesCollection(1).XValues = 0
'Dia.SeriesCollection(1).Values = 0
End Sub
Option Explicit
Sub Skalieren()
''Werte ggf. ändern
''Breite und Höhe links oben
Const W As Double = 300, L As Double = 0, T As Double = 0
Dim Ch As Chart, ShName As String
ShName = ActiveSheet.Name
Set Ch = Sheets(ShName).ChartObjects(1).Chart
With Ch.Parent
.Width = W
.Height = W
.Left = L
.Top = T
End With
With Ch.PlotArea
.Width = W
.Height = W
.Left = L
.Top = T
End With
End Sub
Sub Sleep Lib "Kernel32" (ByVal mS As Long)
Sub KreisLöschen()
ActiveSheet.ChartObjects(1).Chart.SetSourceData Source:=Worksheets("Tabelle1").Range("iv1"), PlotBy:=xlColumns
End Sub
Sub KreisZeichnen()
Dim n As Integer, m As Integer
For n = 1 To 362
Sleep Worksheets("Tabelle1").Range("E6")
Sheets("Tabelle1").ChartObjects(1).Chart.SetSourceData Source:=Worksheets("Tabelle1").Range(Cells(1, 2), Cells(n, 3)), PlotBy:=xlColumns
Next n
End Sub
Gruß
Reinhard