プロが教える店舗&オフィスのセキュリティ対策術

マクロを実行すると以下のエラーが表示されます
---------------------------------------
実行時エラー'1004':
マクロ一覧作成.xlsm'!日付取り込み"を実行できません。このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。
---------------------------------------

「デバッグ」をクリックすると、以下の箇所が黄色でハイライトされます。
---------------------------------------
Sub まとめて実行()
Application.Run "'一覧作成.xlsm'!data00取り込み"
Application.Run "'一覧作成.xlsm'!data01取り込み"
Application.Run "'一覧作成.xlsm'!data02取り込み"
Application.Run "'一覧作成.xlsm'!data03取り込み"
Application.Run "'一覧作成.xlsm'!data04取り込み"
Application.Run "'一覧作成.xlsm'!data05取り込み"
Application.Run "'一覧作成.xlsm'!data06取り込み"
Application.Run "'一覧作成.xlsm'!data07取り込み"
Application.Run "'一覧作成.xlsm'!data08取り込み"
Application.Run "'一覧作成.xlsm'!data09取り込み"
Application.Run "'一覧作成.xlsm'!data10取り込み"
Application.Run "'一覧作成.xlsm'!data11取り込み"
Application.Run "'一覧作成.xlsm'!data12取り込み"
Application.Run "'一覧作成.xlsm'!data13取り込み"
Application.Run "'一覧作成.xlsm'!data14取り込み"
Application.Run "'一覧作成.xlsm'!data15取り込み"
Application.Run "'一覧作成.xlsm'!data16取り込み"
Application.Run "'一覧作成.xlsm'!data17取り込み"
Application.Run "'一覧作成.xlsm'!data18取り込み"
Application.Run "'一覧作成.xlsm'!data19取り込み"
Application.Run "'一覧作成.xlsm'!data20取り込み"
Application.Run "'一覧作成.xlsm'!日付取り込み"    <-----ここが黄色になります
Range("a265").Select
End Sub
---------------------------------------

黄色でハイライトされたマクロの中身は以下の通りです。
---------------------------------------
Sub 日付取り込み()
'
Sheets("data00").Select
Range("a2:a400").Select
Selection.Copy
Sheets("一覧").Select
Range("a4").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("a258").Select
End Sub
---------------------------------------
他のマクロ(「一覧作成.xlsm'!data01取り込み」など)は実行できるのに、最後の
「一覧作成.xlsm'!日付取り込み」のところでエラーになるようですが、どうして
エラーになるのか分かりません。どうか教えていただけないでしょうか。
よろしくお願いいたします。

A 回答 (2件)

コード自体には特に問題点はないと思われます。



「一覧作成.xlsm」ブックの一行目辺りで、ブレークポイントの設定を行って、「日付取り込み」マクロの具体的にどの辺でエラーになっているのか、確認したほうがいいでしょう。

あと、以下のような現象もあるので、全角マクロ名は避けたほうがいいかもしれません。
http://support.microsoft.com/kb/2297924/ja
    • good
    • 1
この回答へのお礼

ご回答、ありがとうございます。

マクロ名に全角を使うのは良くないのですね。気にせずに全角でマクロ名をつけていました…。今までは運よく、エラーが出なかっただけなのでしょうね。

「日付取り込み」マクロを「hizuke取り込み」という名前に変更した結果、うまくいきました。

ありがとうございました!

お礼日時:2014/03/08 21:07

「まとめて実行」のコード中、「"'一覧作成.xlsm'!data00取り込み"」その他は、シングルクォーテーションを除去し、「"一覧作成.xlsm!data00取り込み"」として大丈夫なはずです。



「まとめて実行」各行のシングルクォーテーションや、ダブルのほうのクォーテーションの個数は、どうなっていますか。クォーテーション以外の文字列(マクロ名)は、呼び出すほうと呼びだされるほうで、完全に一致していますか。また、お示しのエラーメッセージは実際のものと厳密には異なっているはずですが、正確なメッセージはどうなっていますか。
    • good
    • 2
この回答へのお礼

ご回答、ありがとうございます。
シングルクォーテーションをすべて外したり、1つ目のマクロだけにシングルクォーテーションをつけたりなど試してみましたが、同じところでエラーが出てしまいます…。

おっしゃる通り、エラーメッセージの転記ミスでした。申し訳ありません。
--------------------------------------
(誤)マクロ一覧作成.xlsm'!日付取り込み"を実行できません。
(正)マクロ '一覧作成.xlsm'!日付取り込み"を実行できません。
--------------------------------------

もう少し、いろいろ試してみたいと思います。

ありがとうございました。

お礼日時:2014/03/08 21:03

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