質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

2回答

5401閲覧

Excel VBA グラフラベルの更新

mochinn

総合スコア13

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2017/12/06 06:35

Excel2016
横軸グラフを作成し、データが追加されるとグラフ範囲が更新されるマクロを作成しています。

VBA

1Dim gr As Worksheet 2Set gr = ThisWorkbook.Worksheets("Graph_RAW") 3 4Dim c As Long 5c = gr.Cells(1, 1).End(xlDown).Row 6 7With Charts("Point Graph").SeriesCollection(1) 8 .XValues = "='Graph_RAW'!$A$2:$A$" & c 9 .Values = "='Graph_RAW'!$B$2:$B$" & c 10 .DataLabels.Text = gr.Range("B2", Cells(2, c)).Value 11 12End With

XValueとValueの更新までは問題なかったのですが、
データラベルの更新で「指定したディメンションは、このグラフの種類では無効です。」というエラーが出てしまいます。

最初作成したグラフのデータラベルには、元のデータの横の列のセルの値を指定していました。
イメージとしては、
Graph_RAWシートに
A列:店名
B列:獲得点数
C列:担当者名 という表があり、これに対して新規シートにグラフを作成し、
縦に店名が表示されていて、横に点数のグラフが伸びていて、データラベルに担当者名が表示、というかんじです。
A列の店名が今後増えていく予定です。

データラベルの範囲も更新されるようにするには、どのように修正したら良いでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

データラベルの設定範囲を変えるのではなく、全てのデータにラベルを付け直す形にしたら、うまくいきました!

VBA

1With Charts("Duration Graph").SeriesCollection(1) 2 .XValues = "='Graph_RAW'!$A$2:$A$" & c 3 .Values = "='Graph_RAW'!$B$2:$B$" & c 4 5 For i = 1 To c - 1 '行数-1(見出し行) 6 With .Points(i) 7 .HasDataLabel = True 'ラベルを設定 8 .DataLabel.Text = gr.Cells(i + 1, 3).Value '見出し分1行下になるため+1 9 End With 10 Next i 11 12End With

投稿2017/12/07 08:00

mochinn

総合スコア13

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

マクロを使わなくても、数式で動的にデータ範囲を自動変更できますよ。

http://officetanaka.net/excel/function/tips/tips71.htm

投稿2017/12/07 00:21

ExcelVBAer

総合スコア1175

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mochinn

2017/12/07 07:53

ありがとうございます。 このサイトは既に参照していて、データを自動変更する仕組みはわかったのですが、ラベルにセルの値を指定していたので、その場合どこを「項目名」にすれば良いのかわからなかったのです・・。 マクロは先程無事に、自己解決できました! お騒がせしました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問