|
▼隼 さん:
こんにちは
(隼 さん は 本山中さんですよね。)
まず、私からの返事の前に、以下、お願いします。
次回、レスされる際に
・マクロを表示させた時に、そのダイアログボックス(マクロ名が表示されている画面のこと)に
表示されているマクロが、複数あれば、それらを全て教えてください。
・この"材料取り"マクロを書いてある場所を教えてください。
通常は、この種のマクロは「標準モジュール」(Module1とかModule2とか)に書きますが
シートモジュールという場所に書かれていることはありませんか?
・材料取り.xlsm!材料取り材料取り これを、目を凝らしてみてください。
! の右側の材料取り材料取り。この2つの材料取りの間に、 . (ピリオド)はありませんか?
文字が小さく、仮に、あっても、見えにくいとは思いますが。あるかないかを教えてください。
さて、
>ブック名!というのはプロジェクトエクスプローラの
>標準モジュールのところの、通常はModule1と表示されている
>もののことですか。
いえいえ、エクセルブックの名前です。 "材料取り.xlsm" というブックなんですよね。
>モジュール名というのは、プロパティウィンドウの(オブジェクト名)で
>作成したもののことですか。
標準モジュールですと、それを挿入すれば、Module1とかModule2とか、自動的につけられますね。
でも、ご存知の通り、そのモジュールを表示させて、プロパティのオブジェクト名に任意の名前をいれて
変更することができますね。変更したか、していないかにかかわらず、「そのモジュールの名前」です。
VBE画面の左上のVBAProjectエクスプローラで
-標準モジュール
Module1
Moduke2
といったように表示されている、その名前です。
で、上に書いたお願いでもふれましたが、
Sub ABC()
'
'
End Sub
こんなマクロがあったとして、通常は、これを「標準モジュール」というところに書きます。
そうしますと、マクロを表示させると、ABC と表示されます。
ところが、これを「シートモジュール」というところに書きますと、マクロ表示は
そのエクセルシート名.ABC となります。
で、仮に、エクセルシート名が ABC だったとすると、 ABC.ABC となります。
もう1つの可能性としては、前レスで申し上げたように、このABCが「複数の標準モジュール」に
かかれていた場合、マクロ表示は
モジュール名.ABC
モジュール名.ABC
なので、モジュール名が ABC と変更されているとすれば、ABC.ABC となります。
でも、これではないような気もします。もし、こうなら、別のモジュール.ABC もマクロ表示に
でてきているはずですからね。
なんとなく、このマクロは、前者、シートモジュールに書かれているような気がしますが。
|
|