- ベストアンサー
マクロの自動実行などについて
エクセル2003のVBAマクロについて質問です あるワークシートに値が入力されたら、マクロを自動実行するように出来ないでしょうか? 又、そのセルの値を別のセルにコピーしたいのですが、データを入力する度にセルの場所が ひとつ下へずれます。この最終列のセルの値を必ず拾うようにするにはどうすればよいでしょうか? ややこしくてすいません
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Private Sub Worksheet_Change(ByVal Target As Range) MsgBox Target.Value End Sub でいかがでしょう。
その他の回答 (3)
- kmetu
- ベストアンサー率41% (562/1346)
> が、解読不能ですw > > 例えば”丸尾末男”というマクロを自動実行するにはどうすればよいでしょうか? 回答したマクロをそのままどのSheetのマクロでもいいですから貼り付けて そのsheetで適当なセルにデータを入力してみてください。 実際に実行すれば何が起こっているのか理解(解読)できるでしょう。 ワークシートに値が入力されたらマクロ(例としてMsgBox)を自動実行 入力された値を拾う(MsgBoxで値を表示) # 下へずれる前のセルの値を取得するわけですよね。 # 下にずれた先の値でしたら MsgBox Target.Offset(1, 0).Value という二つの仕様は満たしています。 示された仕様以上のことは、ご自分の環境に合わせて (別のセルにコピーなどは回答を参考にご自身で解決できる問題ですね) 手を加えてください。
- nag0720
- ベストアンサー率58% (1093/1860)
>この最終列のセルの値を必ず拾うようにするにはどうすればよいでしょうか? ひとつ下へずれるのなら、"最終列"ではなくて"最終行"ですよね。 入力されている最終行を知りたいのなら、Endプロパティを調べてください。
- Sinogi
- ベストアンサー率27% (72/260)
ややこしくありませんが解読不能です。 >あるワークシートに値が入力されたら、マクロを自動実行するように出来ないでしょうか? #1氏から回答があるとおり可能ですが、どのセル(行指定、列指定など)が明示されなければすべてのセルを対象にマクロが発動するようになります。 >又、そのセルの値を別のセルにコピーしたいのですが、データを入力する度にセルの場所がひとつ下へずれます。 入力するセルとコピーするセルの位置関係が不明です。入力するセルの番地にかかわらず、そのシートでは入力があるたびにコピーセルが1行下に移動して入力値がコピーされるのが希望なのですか? >この最終列のセルの値を必ず拾うようにするにはどうすればよいでしょうか? 最終列とはなんですか?直前の説明では「1行下に移動」とありますが列が移動するのですか?それともまた別の話ですか? >例えば”丸尾末男”というマクロを自動実行するにはどうすればよいでしょうか? ”丸尾末男”というマクロが存在するのですか?”丸尾末男”が「そのセルの値を別のセルにコピーしたい」を実行するなら#1氏の提示コードに”丸尾末男”を実行するよう設定してみましょう。 #1氏が提示したチェンジイベントはこのサイトでも頻出しています。少し検索すればいくらでも例や解説が見つかります。 現状では質問/補足ともに意味不明です。推測すらできません。 ややこしいことではありませんから、具体的な質問をしてください。
補足
回答ありがとうございます が、解読不能ですw 例えば”丸尾末男”というマクロを自動実行するにはどうすればよいでしょうか?