web-dev-qa-db-ja.com

チャート番号を参照せずにチャートを選択する

生成されたグラフの数は常に変化するため、グラフ番号を知らなくても、VBAを使用してExcelのシートでランダムなグラフを選択したいと思います。誰か助けてくれませんか?チャート番号を参照せずにチャートを選択することはできますか?アクティブなグラフのグラフ名を変更したい。

1   ActiveSheet.ChartObjects("Chart 409").Activate
2   ActiveSheet.Shapes("Chart 409").Name = "Chart 1"
3   ActiveSheet.ChartObjects("Chart 1").Activate
7
user2640906

すべてのチャートまたはランダムなチャートを選択するには、チャートインデックスを使用できます。

Sub getcharts()

Dim ws As Worksheet
Dim ch As ChartObject
Set ws = ActiveSheet

cnt = ws.ChartObjects.Count
random_num = Application.WorksheetFunction.RandBetween(1, cnt)

ws.ChartObjects(random_num).Name = "NAM"  'The Random chart
For Each ch In ws.ChartObjects
    ch.Name = "Put the name of Chart here "
    'Or Do anything with you all the charts here
Next


End Sub
1
PankajKushwaha