現在選択されている画像のサイズを100%x 100%に変更するVBAスクリプトを作成する最初のステップとして、 http://msdn.Microsoft.com/en-us/libraryの例を再現しようとしています。 /ee814736(v=office.14).aspx 。マクロは非常に簡単です。
Sub Test()
MsgBox ("Hello world")
End Sub
VBAスクリプトは、Alt + F11を押すとデフォルトで開く「Project1」で作成されました。ただし、VBAスクリプトを実行しようとすると、エラー「Sub or Function not defined」が表示され続けます(図1および2)。
OutlookでVBAスクリプトを「アクセス可能」にするにはどうすればよいですか?
図1 Microsoft Outlookでの「テスト」マクロの実行
図2「サブまたは関数が定義されていません」エラー、モジュールツリーがバックグラウンド
Msdn.Microsoft.comの指示に従うことで問題を解決しました。そこでは、開発者->マクロを選択し、新しいマクロ名を入力して、「作成」をクリックすることにより、新しいマクロを作成する必要があると述べられています。この方法でマクロを作成すると、実行できました(下のメッセージボックスを参照)。
この問題についても同様の状況がありました。この場合、次のようになります。
Sub Test()
MsqBox ("Hello world")
End Sub
問題は、「MsqBox」(gではなくq)にスペルミスがあり、エラーがあったため、実際には誤解を招く可能性がありましたが、そのようなこのエラーについては、おそらく他の誰かがそれがこのようなミススペルによる原因であることに気付くでしょう...
これはおそらくあなたの質問には答えませんが、私は同じ質問を持っていて、私に答えました。
私が変更され Private Function
からPublic Function
そしてそれは働いた。
この「サブまたは関数が定義されていません」というエラーは、スクリプトに何らかのコンパイルエラーがあるたびに発生するため、スクリプトの構文をもう一度確認してください。
Msgboxの代わりにmsqboxを使用すると、エラーがスローされるのはそのためだと思います。
MS Outlookを使用して、VBAコードが機能するようにライブラリを更新する必要があると思います
モジュール名とサブ名が同じである場合、そのような問題があることを追加する必要があります。モジュール名をsubと同じ「Test」ではなくmod_Testに変更することを検討してください。