您是否知道如何在 VBA 中創建一個回圈以插入圖表,例如每個包含字串“%”的范圍或僅針對每個單獨的范圍,如圖所示?我嘗試使用如圖所示的代碼,但它只為第一個范圍添加圖表,而不是為所有范圍添加圖表。
我試過這樣的代碼:
Sub Charts()
Const SFind As String = "%"
Dim rng As Range
Dim lo As ListObjects
For Each lo In Worksheets("Wyniki").ListObjects
On Error Resume Next
Set rng = ActiveSheet.Cells.Find(SFind).CurrentRegion
If Not rng Is Nothing Then
With ActiveSheet.Shapes.AddChart.Chart
.ChartType = xlColumnClustered
.SetSourceData rng
End With
End If
Next
End Sub

uj5u.com熱心網友回復:
您需要使用范圍 fromlo作為資料源。
Public Sub CreateChartsFromAllTables()
Dim lo As ListObject
For Each lo In Worksheets("Wyniki").ListObjects
With Worksheets("Wyniki").Shapes.AddChart.Chart
.ChartType = xlColumnClustered
.SetSourceData lo.Range
End With
Next
End Sub
永遠不要On Error Resume Next像以前那樣使用。這是邪惡的,因為它隱藏了所有錯誤訊息,直到End Sub錯誤仍然發生,您只是看不到它們的訊息。如果您沒有看到訊息但有錯誤,則無法修復它們。如果您不修復它們,則代碼將不起作用。永遠不要這樣使用它。有關如何正確使用錯誤處理的資訊,請參閱VBA 錯誤處理 - 完整指南。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/448403.html
下一篇:如何將包含公式的文本部分加粗?
