Wednesday, October 10, 2007

[EXCEL_VBA]今天見識到Shape的一個應用

最近學習VBA,看到一段關於 Shape 的CODE,執行後真是神奇,不過目前還想不到這個到底有甚麼用處,難道可以用來展示或簡報嗎,恩,或許吧!
如下:
Sub t1()
Dim mysht1 As Worksheet
Dim mysht2 As Worksheet
Dim rng As Range
Dim mypi As Double
Dim myshp As Shape
Set mysht2 = Worksheets(Worksheets.Count)
With mysht2
For Each myshp In .Shapes
myshp.Delete
Next myshp
mypi = WorksheetFunction.Pi
Set myshp = .Shapes.AddShape(Type:=msoShape5pointStar, _
Left:=100, Top:=100, Width:=100, Height:=100)
End With
With myshp
For i = 1 To 2000 Step 5
.Top = Sin(i * (mypi / 180)) * 100 + 200
.Left = Cos(i * (mypi / 180)) * 100 + 200
.Fill.ForeColor.RGB = i * 100
For j = 1 To 5
.IncrementRotation 2
DoEvents
Next j
Next i
End With
End Sub