• ベストアンサー

Excelグラフデーターラベル移動

Excel2013のグラフデーターラベル(値)の位置をまとめて移動(上方向)したいのですがグラフ種類の円、折れ線等はデータラベルの書式設定の配置でラベルの位置を変更することで移動可能ですが、面ではラベルの位置が表示されないのでまとめて移動ができません。一個づつ移動するのもとても面倒なのでどなたか良い方法をご教授願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

>面では・・・、の意味がわかりません。補足しておいてはどうでしょう。 ーー 'http://qa.itmedia.co.jp/qa8500730.html にWEBに記事があり、 それで、多少変えて、やってみた。 標準モジュールに、下記コードを貼り付ける。そして実行する。 Sub test30() Dim ser As Series Dim dlb As DataLabel For Each ser In ActiveChart.SeriesCollection With ser .HasDataLabels = True .HasLeaderLines = True .DataLabels.Position = xlLabelPositionCenter For Each dlb In .DataLabels With dlb .Left = .Left + .Width / 2 + 20 .Top = .Top - .Height / 2 End With Next End With Next End Sub この.Left = と.Top= は、データラベルの位置決めの部分で、左から、上からの距離の指定をしています。 これが簡単な式(定数や加減乗除)で表されるなら、VBAで、位置決めできると思います。 上記コードは、元のWEBのコードの結果状態に対して、それから右に20の位置にずらすように、小生が変えたものです。 加えて、.HasLeaderLines = True で引き出し線を表示してます。 ーー DataLabels.Position = xlLabelPositionCenter の右辺に指定する定数に、数種のバラエティがあるようですが、 https://docs.microsoft.com/ja-jp/office/vba/api/excel.xldatalabelposition やってみると、(小生の所為と思うが)うまく行かなかった。参考までに。

関連するQ&A