• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:モジュール名を変更すると正常に動作しない)

モジュール名を変更すると正常に動作しない

このQ&Aのポイント
  • モジュール名を変更すると正常に動作しなくなりました。
  • 試しに新しいモジュールを作成して関数を書き込んでみましたが、問題は解決しませんでした。
  • 原因や対策について知識がありましたら、教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

> モジュール名を変更すると何故ダメなのか? 例えば、質問者さんの母親が普段料理をしているとして、 ・砂糖の入れ物を塩の入れ物に変更する。 ・醤油の入れ物をソースの入れ物に変更する。 ・入れ物にラベルを張ってるなら、ラベルを別の調味料の名前に変更する。 を黙ってやったら、まともに料理できないみたいな話です。 入れ物の名前を変えたなら料理する人にしっかり伝える必要があるように、「Module1」を呼び出している処理の呼び出し名を変更するとかって必要があります。

ampm2007
質問者

お礼

なるほど、イメージが掴めました。 入れ物名は最初にきちんと決めておく! 決めたら入れ替えない!が良さそうですね。 有難うございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

回答No.3

> 関数を読み込みにいったまま答えが戻ってこない状態 > メモリ不足の時に画面がフリーズするような? VBAの処理がループしてるなら、キーボードのCtrl+Breakで処理中断して、ステップ実行などで期待した通りに動作しているのかを確認とか。

ampm2007
質問者

補足

いえ、VBAの記述がどうこうではなく、 モジュール名を変更すると何故ダメなのか? モジュール名を変更しても正常に動作する方法、 あるいは手順があるのか?が知りたいのです。

全文を見る
すると、全ての回答が全文表示されます。
回答No.2

Q、原因や対策、解決策を教えてくださいを。 A、モジュール名や関数名は一切変更しないこと。  変更後に挙動がおかしくなった場合は、全て一からやり直します。これは、名前だけの問題ではありません。フォームやレポートのコードも順番を入れ替えると正常な動作は期待できません。これは、昔から知られている問題です。

ampm2007
質問者

お礼

なるほど、そういうものなのですね。 有難うございました。

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

> 正常に動作しなくなってしまい、 どういう操作で動作させようとしたら、何がどうなるはずのものが、どういう風に動作しなかったの? 例えば、シートに配置したフォームボタンを押してMacro1を呼び出してたなら、モジュール、関数の名前を変えると同時に、ボタンを右クリック-[マクロの登録]で、呼び出すマクロを変更する必要があるハズ。

ampm2007
質問者

補足

フォームやボタンなどの使用はありません。 簡単な計算式の独自関数を作成し、 答えを表示させるだけのものなのですが、 関数を読み込みにいったまま答えが戻ってこない状態 と言えば良いのでしょうか? メモリ不足の時に画面がフリーズするような? 動いているのに「応答なし」状態のようになってしまいます。 「関数がない」などのエラーも出ません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • access2000 モジュールの削除について

    モジュール module1を削除しようとして、 モジュールの解放を行ったところ、 「ファイルへのアクセスでエラーが発生しました。 ネットワークへの接続が切断されている可能性があります」 と表示され、削除されません。 他のモジュールでmodule1の関数を使っていたためでしょうか? module1の内容は、別のファイルにコピーをとってあるので、 一度module1を削除して、あらたにmodule1を作成したいのですが、 (module1がつかえないと、他のモジュール内のmodule1とう文字をすべて書き換えないければ、ならない^^;) 上記のエラーがでてしまい、 自分では修復できません。 アドバイスお願いします。<(_ _)>

  • 自身が記述された標準モジュールを常に参照する方法

    標準モジュール名を指定せず、自身が記述された標準モジュールを常に参照する方法 例えば A = W_Book.VBProject.VBComponents("Module56").CodeModule.ProcBodyLine("Workbook_SheetSelectionChange", 0) というコードを"Module56"内に記述した場合Module56という標準モジュール名を例えばModule44と変更してしまうと動かなくなってしまうと思います。 これを、常にThisWorkbookのように、このコードが記述されたモジュールを参照するように変更はできますでしょうか?もしご存知でしたらご回答頂けますと幸いです。どうぞよろしくお願いいたします。

  • 自作モジュールを認識しない

    Perl 5.8 自作モジュールのあるフォルダをFOLDER、モジュールの名前をMODULEとして以下のコードを実行してもモジュールが見つからない旨のメッセージが表示されます。 モジュールの拡張子は.pmを使用しています。 また、モジュールを標準の拡張モジュールのおき場所に置いた場合は適切に動作しました。 #! /usr/local/bin/perl push (@INC ,FOLDER); use MODULE;

    • ベストアンサー
    • Perl
  • エクセルVBAの標準モジュール名の変更方法?

    エクセル2000です。 標準モジュールは通常Module1~ですが、この名前を変えるにはどうしたらよいのでしょう?右クリックしてもだめでした。 VBAではなく、手作業で変える方法の質問です。 よろしくお願いします。

  • EXCEL2003VBA 「マクロでモジュール解放」

    質問番号:5548045の関連質問です。 EXCEL2003VBA で、セキュリティ設定で『Visual Basic プロジェクトへのアクセス』にチェックを入れて、Module1に下記のように「モジュール解放」マクロを作成しましたが、Module1が削除されません。(1)を削除して、手動操作で変更を保存でファイルを閉じるとModule1も削除されます。 Module1の削除も全てマクロで行うやり方を教えてください。 With ThisWorkbook.VBProject.VBComponents .Remove .Item("Module1") .Remove .Item("Module2") .Remove .Item("Module3") End With ActiveWorkbook.SaveAs Filename:="D:\TEST" ActiveWorkbook.Close ・・・(1)

  • エクセルVBA PERSONALのモジュールを消してしまった!

    今、誤ってブックの標準モジュールを削除するべきところ、PERSONAL.XLSの標準モジュールを解放にしてしまいました!! 回復する方法はないでしょうか? 大変困っています。

  • ACCESS2003 標準モジュールCALLについて

    お世話になります。 ACCESS2003で、標準モジュールの呼び出しについて次のような流れを 作りたいと思っていますす。 標準モジュール名:TEST public sub AA() dim txtB as string (*1 txtB = "TEST.subBB" (*2 call txtB end sub 実現させるには、*1の命令がobjectまたはmodule型で宣言し、 2)はset命令を利用すると思います。 どのように命令作成してよいか困っています。 実際に作成する場合、どのような設定、命令が必要でしょうか。 既出、文献でも教えていただけないでしょうか。 よろしくお願いします。

  • エクセルVBAで標準モジュールを保護したい

    エクセルのVBAマクロを使用したエクセルフィルがあります。 ユーザーは標準モジュールに記述した関数を使ってシートのマクロを変更してカストマイズできます。 ユーザーが標準モジュールを変更すると使用できなくなりますので、この標準モジュールだけをユーザーが変更できない、または見えないようにする方法をご教示いただけませんか。 よろしくお願いします。

  • Excel VBA 標準モジュールの整理?

    Excel2003を使用しています。 ある人が作成したファイルが数十人分、WEB上に保存してあり、マクロも数個含まれています。 マクロの内容は、シート上に配置されているボタンをクリックすることで印刷する書類(印刷範囲)を変更するといった簡単なものがほとんどなのですが、マクロの記録を何度もとりながらコードを書いたらしく、標準モジュールが20個もありましたが、空のモジュールのほうが多かったです。 また、マクロに判別しやすい名前が付いていないため、このボタンのコードは、どのモジュールに書かれているのかが分からないので、ひとつひとつ確認しながら、空のモジュールは削除し、同じシート上で行う処理は、同一のモジュール内にまとめるなどして、標準モジュールを整理しました。 上記のことを自分用に作成されているファイルで行いましたが、同じ部署内の分は私が管理するので、標準モジュールの内容(モジュールの数とコード)を私のファイルと同じようにしたいのですが、コピペのような簡単な方法はあるでしょうか? 質問内容が分かりづらくて申し訳ありませんが、よろしくお願いします。

  • Aimsterが起動しません

    Aimsterを起動させようとしたのですが、「Aimsterが原因で<不明>にエラーが発生しました。」と出て終了してしまいます。ワトソン博士を使ってみたところ以下のようなことが書いてありました。 アプリケーションまたはその DLL は、初期化されていない関数ポインタ変数を使用したか、既に解放された DLL を使おうとしました。 モジュール名 : <不明> アプリケーション名 : Aimster.exe -------------------- タスク バーが正常に動作しない場合は、既存の Internat を試してください。 モジュール名 : INTERNAT.EXE 説明 : Internat バージョン : 4.90.1000.0 製品名 : Microsoft(R) Windows NT(R) Operating System 製造元 : Microsoft Corporation -------------------- タスク バーが正常に動作しない場合は、既存の Multimedia background task support module を試してください。 モジュール名 : mmtask.tsk 説明 : Multimedia background task support module バージョン : 4.90.3000 製品名 : Microsoft Windows 製造元 : Microsoft Corporation これを見ても私にはどうしたらいいのか分かりません。 どうすれば直るのでしょうか。よろしくお願いいたします。