アプリ版:「スタンプのみでお礼する」機能のリリースについて

毎度お世話になっております。

アクティブシートのD~Fの列(の最下行)に新しいデータが入力されたら、同じシートのグラフを更新するようにしたいのですが、何故かうまく動くシートと動かないシートがあります。

イベントVBAは、This Bookに下記のコードを記入して、グラフ化のコードは標準モジュールに記入しています。

snmpleXのコードはどのシートでも期待通りに動きます。
ひょっとしたら、うまく動くシートは最初のグラフ化の時に今のデータ数以上で元のグラフを作成したのが原因で、本当は全てのシートで動いていないのかもしれません。(そうでもない気がしているのですが???)


Private Sub Worksheet_Change(ByVal Target As Range)

If (Target.Column >= 4 And Target.Column <= 6) Then

'列の値に変更があったときに実行したい処理を記述
Call sampleX
End If
End Sub

A 回答 (1件)

>This Bookに


? ThisWorkbook のモジュールなら
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
だと思いますが・・・上手くいく。。」

まあ、大丈夫だと思いますが Call sampleX(Sh) みたいにシートオブジェクトを投げる方が良いかもですが・・

各シートのPrivate Sub Worksheet_Change(ByVal Target As Range)は
他に使っていなければ不要かな
    • good
    • 0
この回答へのお礼

早々のご回答ありがとうございました。

朝一で試してなるほど!!うまく行きました。

既にご推察のことと思いますが、当方永遠のVBA初心者です。
NETで拾ってきたり、マクロの記録で何とかかんとかのレベルで、それでだめならこのように質問させ貰っています。

早期解決、助かりました。

お礼日時:2022/12/08 08:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!