No.1ベストアンサー
- 回答日時:
この質問はエクセルVBAでもプロ級の人が考える課題のように思いますね。
似た事例が見つかったので上げて見ます。
とりあえず、別シートにグラフを作ること。
http://www.moug.net/tech/exvba/0020010.htm
のようにChartのイベントで捉えること。
上記でデータまでは捉えられますが、そのもととなったセルの行、列はどういうメソッドとプロパティで捉えられるかは、私では現状判りません。
ヘルプ、大部のVBAのマニュアル(でないと載っていない)、WEB(検索語がわからないけれど)など当たってください。
健闘を祈ります。
この回答への補足
ヘルプ、「埋め込みグラフでイベントを使用する」を参考にし、1シートに複数のグラフが作図されている場合でも、x・y座標を取得することができました。
後はimogasiさんから教えて頂いたmouseupイベントを
使い選択したグラフ要素が何系列目で、
何個目のグラフ要素かを一度セルに移し、
ショートカットを指定した時点でその移したセルの
値を引用するようにしました!
本当にありがとうございました!
ちなみに途中までのコードを書いてみます(*^_^*)
'クラスモジュール (Class1)
Public WithEvents myChartClass As Chart
Private Sub myChartClass_MouseUp(ByVal Button As Long, ByVal Shift As Long, ByVal X As Long, ByVal Y As Long)
Dim ElemID As Long, Arg1 As Long, Arg2 As Long
Dim Var, XVar, YVar, MyRow As Variant
ActiveChart.GetChartElement X, Y, ElemID, Arg1, Arg2
Select Case ElemID '定数値の詳細はヘルプを参照
Case xlSeries 'データ系列
Sheets("sheet2").Cells(2, 1) = Arg1 '何系列目をクリックしたかを表示
Sheets("sheet2").Cells(2, 2) = Arg2 '何個めをクリックしたかを表示
End Select
End Sub
'標準モジュール
Public myClass(2) As New Class1 '配列数には最大グラフ数を入力
Public Sub InitializeChart()
For i = 1 To 2 'グラフを割り当てる
Set myClass(i).myChartClass = Worksheets(1).ChartObjects(i).Chart
Next i
End Sub
早速の回答ありがとうございます。
すごく勉強になるサイトですね!
私の説明不足だったのですが、
今回のグラフは1つのシートに複数の
グラフが作図されています。
そのどのグラフを指定してもマクロを
実行したいのです。
今回x・y座標を取得するのに教えて頂いた
Chart_MouseUpイベントは、
試してみたのですが、恐らく、
1シートに1グラフの場合にのみ実行される
イベントなのですよね?
(埋め込みグラフというのでしょうか)
でもGetChartElementで、x・yの座標さえ取得
できればなんとかなりそうですね!
3歩ぐらい前進できました!
もし埋め込みグラフ以外のグラフの
xy座標を取得できる方法があれば
また教えてくださいm(__)m
ありがとうございました(*^_^*)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/02/07 09:58
- Excel(エクセル) エクセルの大きなシートでグラフを見つける 4 2022/07/28 10:07
- Excel(エクセル) 特定の位置にあるマクロボタンについて 2 2022/04/19 18:13
- Visual Basic(VBA) マクロ初心者の質問です。 1.シートを開いてマクロを実行する場合、アクセスキーでAlt-L-PMとタ 2 2022/12/23 10:08
- その他(プログラミング・Web制作) Pythonでexcelのvbaを作成、実行する方法について Pythonで表の自動集計プログラムを 3 2022/07/09 09:58
- Excel(エクセル) マクロを教えてください 3 2023/07/31 21:57
- Excel(エクセル) マクロを教えてください 2 2023/07/30 23:05
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- Excel(エクセル) エクセルのマクロが上手く動きません 4 2022/07/14 13:25
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
VBA 散布図の点の元セルを取得したい
Excel(エクセル)
-
グラフのX,Y座標を取得したい
Excel(エクセル)
-
エクセルグラフからセルを特定する方法
Excel(エクセル)
-
-
4
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
5
Excel グラフのプロットからデータを見つける
Excel(エクセル)
-
6
VBA(excel)でグラフのデータ範囲の取得
その他(Microsoft Office)
-
7
[VBA]グラフの要素が参照しているセル範囲の取得
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルファイルを値でのみし...
-
セルに入力するたびにマクロを...
-
Excelでマクロ実行中に画面を固...
-
【Excel】マクロでページを追加...
-
ブックの共有でVBAエラー
-
VB.NETによるEXCELの行挿入
-
VBAで行コピーして挿入
-
【ExcelVBA】マクロブックを通...
-
VBA Shapes コピーと名前
-
別のexcelのデータをコピペするVBA
-
エクセルのマクロについて教え...
-
VBAについての質問です
-
VBAで保存しないで閉じると空の...
-
Excel マクロの編集がグレーに...
-
WPSOffice_マクロの有効化について
-
エクセル関数>参照ファイル名...
-
Excelのマクロでボタンを押すと...
-
エクセルマクロで、別のブック...
-
TeraTermマクロでctrl+alt+del...
-
エクセルで、「いいね」のよう...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルファイルを値でのみし...
-
エクセルのマクロについて教え...
-
Excelでマクロ実行中に画面を固...
-
VBA Shapes コピーと名前
-
エクセル マクロ写真帳に一括で...
-
エクセル連番自動印刷について
-
エクセル 図形の寸法を取得したい
-
【Excel】マクロでページを追加...
-
セルに入力するたびにマクロを...
-
エクセルVBAで納期管理システム...
-
ブックの共有でVBAエラー
-
EXCEL VBA 他のアプリケーショ...
-
VBAで行コピーして挿入
-
EXCEL 行番号や列番号が選択で...
-
【ExcelVBA】マクロブックを通...
-
ExcelのVBAで自動採番したい...
-
エクセルファイルの回数期限の...
-
シート名を記入する
-
VB.NETによるEXCELの行挿入
-
エクセルのマクロを教えてください
おすすめ情報