プロが教えるわが家の防犯対策術!

開発途中のExcel2003ファイルですがテストの途中でユーザフォームを開くとパス名が無効ですと出ます。
それまでは何度となく開いていたのですがあるとき突然でたのです。ほかのユーザフォームでも同じように出ます。
そこで質問ですがユーザーフォーム名に漢字を使ってはいけないのでしょうか?
それとオブジェクト名を変更してはいけないですか?
それ以外には心当たりがないのですがそれ以外だとするとどうしておこったのでしょうか
初歩的な質問で申し訳ありませんが教えてください。

A 回答 (5件)

>コマンドボタンを押したところでユーザーフォーム名(漢字)でエラーです。


>F8でデバッグしてもそこでとまります。

では実験的にユーザーフォーム名をUserForm1に戻して実行してみたらどうなりますか?
ちなみにその漢字のユーザーフォーム名は何でしょう?(差支えなければ)



>他にもコマンドボタンは2~3つかっていますがその時点ではすべてが同じエラー表示になります。
>コマンドボタンを押さない限りF8デバッグで追っていてのエラーにはなりません。

もう少し判り易く具体的に説明してください。
例えば
○シート上に[コントロールツールボックス]からのCommnadButtomを幾つか配置している。
○CommnadButtomに
 Private Sub CommandButton1_Click()
   漢字名フォーム.Show
 End Sub
 と記述してUserFormを呼び出している。
○このCommnadButtomから実行するとエラーになる。
○標準モジュールに
 Sub Test()
   漢字名フォーム.Show
 End Sub
 と書いて実行すればエラーが発生しない。

...とか?
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
各ページ設定.Showをpeiji.Showに直したらエラーがでなくなりました。

お礼日時:2011/02/21 22:23

>オプションの「自動保存」のところで、


>「次の間隔で回復用データの自動保存を行う」のチェックをはずし、
>「自動保存を行わない」のチェックを入れるとエラーが発生しなくなりました。

過去の事例(Ver.2002)でこういうのがあります。
自動保存はどうなっていますか?。

この回答への補足

確認しましたらいつの間にか自動保存になっていました。
でもはずしても変化なかったみたいです。
なぜか漢字の名前を(各ページ設定)をアルファベットに変えたらエラーが出なくなり現在使えるようになりました
ありがとうございました。

補足日時:2011/02/21 22:30
    • good
    • 0

>コマンドボタンを押したところでユーザーフォーム名(漢字)でエラーです。


そうであっても、UserForm内のコードのエラーです。
別に、UserForm名を2byte文字を使ってはいけないことはないのですが、あるレベル以上の人というか、いくつかの言語を扱っている人は、使わないのは当たり前のことですし、いくつかのコーディング・ルールを守りますが、それをしなければならないことではありません。ただし、VBAでは、使ってはいけない漢字があるそうです。

今の段階で、回答者側から、コードも何もみないで、「パス名が無効」というエラーだけで、どこが問題というようなことは、言えるはずもありませんが、もし、ご自分で探すなら、まず、Private Sub UserForm_Initialize() の所で、ブレークポイントを設けて、その後は、ステップモードします。つまり、UserForm を起動する時に、一旦、その内部全体が、再コンパイルされますから、UserForm内のエラーが出た後では、ステップモードで見ることは出来ませんから、UserForm に入る前に止めなくてはなりません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
UserForm名を変更したらなりおました。

お礼日時:2011/02/21 22:26

>パス名が無効


普通に考えて何かCSVファイルとか外部ファイルのパスを指しています。
仮にフォーム名が漢字だとしてもそれをパスが無効とは言わないと思いますが・・。

パスが無効、というのだから、パスは何を指している?、
ここからどこがおかしいかを手繰り寄せる。

原因があいまいなうちにあれやこれや修正してみるのは、
傷が広がる可能性あり危険です。

前回答あるように、1行ずつ実行、メッセージボックス追加、など
デバッグを覚えるのが今後のためにも効果大です。
エラーが起きる原因やエラー箇所の見つけ方を把握してから作る方が対処楽です。

とりあえず、
「OPEN」「CLOSE」「path」こういうファイルに関係するキーワードで検索すると
パスが関係している行の可能性が高いです。

それをどう直したらいいかは次のステップです。

この回答への補足

早々にありがとうございます。
コマンドボタンを押したところでユーザーフォーム名(漢字)でエラーです。
F8でデバッグしてもそこでとまります。
あわせてよろしくお願いします。

補足日時:2011/02/21 20:44
    • good
    • 0

エラー発生時、[デバッグ]ボタンクリックし、[F8]キーで1ステップずつ実行してみてください。


Formモジュール内のエラー発生行まで進みませんか?

この回答への補足

ありがとうございます
コマンドボタンを押したときに起こりました。
他にもコマンドボタンは2~3つかっていますがその時点ではすべてが同じエラー表示になります。
コマンドボタンを押さない限りF8デバッグで追っていてのエラーにはなりません。
よろしくお願いします。

補足日時:2011/02/21 20:56
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A