[英]Microsoft Excel VBA Plot Macro
使用VBA,我想創建一個宏,該宏將在運行宏之前繪制選定區域。 我有一個宏,可以每次繪制相同的數據選擇,但是我希望它繪制一個選擇。 我的當前代碼如下。 謝謝。
Sub AddChart()
'
' AddChart Macro
'
' Keyboard Shortcut: Ctrl+Shift+D
'
With ActiveSheet.ChartObjects.Add _
(Left:=100, Width:=375, Top:=75, Height:=225)
.Chart.SetSourceData Source:=Sheets("Sheet1").Range("A1:B9")
.Chart.ChartType = xlXYScatter
End With
End Sub
如果您希望將當前selected
單元格轉換為圖表,則可以使用Application.Selection。 當您選擇一個或多個單元格時,Application.Selection將返回一個范圍值。 我們可以直接將其輸入源。
我們檢查typeOf
以確保當前選擇的范圍是避免任何討厭的錯誤。
Public Sub AddChart()
'
' AddChart Macro
'
' Keyboard Shortcut: Ctrl+Shift+D
'
If TypeOf Selection Is Range Then
With ActiveSheet.ChartObjects.Add _
(Left:=100, Width:=375, Top:=75, Height:=225)
.Chart.SetSourceData Source:=Application.Selection
.Chart.ChartType = xlXYScatter
End With
End If
End Sub
如果我正確理解:
Sub AddChart()
'
' AddChart Macro
'
' Keyboard Shortcut: Ctrl+Shift+D
'
Dim auxStr As String
auxStr = InputBox("Enter valid cell range, like A1:B9")
With ActiveSheet.ChartObjects.Add _
(Left:=100, Width:=375, Top:=75, Height:=225)
.Chart.SetSourceData Source:=Sheets("Sheet1").Range(auxStr)
.Chart.ChartType = xlXYScatter
End With
End Sub
您也可以添加其他變量,例如Left,Width等。 全部使用輸入框。 當然,如果您需要編輯許多變量,則模態用戶窗體將更易於維護,並且是避免錯誤輸入的正確方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.