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

昨日から、エクセル2003を使ってVBAを、勉強している者です。

ネット上で調べながら、取合えず簡単なVBAを入れる事が出来ました、ですがエラーばかりで、どうしても先に行けず困っています。

ネット上で参考になる、VBAなどを見て思ったのですが
エクセルのVisual Basicを開くと、左側に「Sheet1」とか「Module1」等があります。

参考になるVBAでは、「Sheet1」に書かれているのがあれば、「Module1」に書かれているのもあります。

VBAは「Sheet1」に、書き込まれるべきなのでしょうか?それとも
「Module1」に、書き込まれるべきなのでしょうか?

私の場合、例えば「1」「2」「3」と数字を打ってマクロの記録をして、Visual Basicを開くと、すべて「Module1」に書き込まれます。

すみませんが、教えて頂けませんか?

A 回答 (2件)

普通のVBAプログラムはModule1、Module2、・・・などに書きます。

これは、そのプログラムを「実行しろ」と命令しなければ実行しません。
Sheet1などに書かれるプログラムは、「Sheet1(コード)」を開いたとき、左上に表示されている「(General)」の右の黒下三角をclickして、「WorkSheet」を表示したとき、右側上の黒下三角をclickして表示されるプログラムなどを書くのです。これは、イベントプロシージャといって、Sheet1に何か入力したときとか、SHeet1を閉じたときとかに自動で実行されるプログラムです。これは、ThisWorkbookも同じです。
そのほかに、Class Moduleがありますが、これはもう少し勉強してからにしましょう。
    • good
    • 0
この回答へのお礼

okormazdさん、回答どうもありがとうございます。

>普通のVBAプログラムはModule1、Module2、・・・などに書きます。
>これは、そのプログラムを「実行しろ」と命令しなければ
>実行しません。

ん~自分の中で、わかったようなわからないような感じです。
「実行しろ」と命令とは、ただ単に「1」「2」「3」と数字を打ってマクロの記録をする事とは、
別の意味なのかな~?(´;ェ;`)ウゥ・・・


>Sheet1に何か入力したときとか、SHeet1を閉じたときとかに自動で実
>行されるプログラムです。

私の場合、Sheet1に「新しいマクロの記録」→「1」「2」「3」→「記録終了」と
入力したのですが、何回行ってもやはり「Module1」に書き込まれます。
やはり私のやり方に問題あるのですね?難しいな~


>そのほかに、Class Moduleがありますが、これはもう少し勉強してか
>らにしましょう。

はい、もう少し勉強してからにします。
今の質問だけでも、パニックになってます。


okormazdさん、VBA初心者の勉強にいいお勧めサイトや
参考書類知っておられたら、教えて貰えませんか?
宜しくお願いします。

お礼日時:2009/11/16 12:53

「実行しろ」という命令と、ただ単にマクロの記録をする事とはまったく別の意味です。

「実行しろ」というのが命令です。
あなたのやっていることは、単にマクロを記録しているだけです。
普通は自分でマクロプログラムを作るのですが、簡単にできるように、マクロ記録の機能があります。
「1」「2」「3」と数字を打ったのを消して、
ツール―マクロ
で、Macro1とかMacro2を選んで、「実行」のボタンを押してください。
それが「実行」しろという命令です。
「私のやり方に問題」はないですよ。
それより、基本的なことがわかっていないようなので、ここではこれ以上の説明をするのはしんどいです。
    • good
    • 0
この回答へのお礼

okormazdさん、お返事ありがとうございます。

マクロの記録と、実行しろの命令は、別なのですね

もっと自分自身で、基本を勉強してみます。

いろいろ教えて頂いてありがとうございました。

お礼日時:2009/11/16 17:35

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