• ベストアンサー

Excel VBA のエラーに対処法について

こんばんわ。 ExcelVBAのはじめたばかりのものです。 初歩的な質問になってしまうかもしれませんが、アドバイスをお願いいたします。 環境 Excel2010 自分で作成したマクロを使用した際に作成時は正常に処理され期待値を求めることができたのですが、一度保存し再度ファイルを開いて同じマクロをつかうと「#NAME?」とエラーになってしまいます。 保存時には「xlms」保存しており、引数を必要としないマクロでも同様の症状が発生してしまいます。 この症状の原因、または対処法について心当たりがありましたらアドバイスをお願いいたします。

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

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

セルに#NAME?とでるのでしょうか? こんなエラーですか? !エクセルで#NAME?とエラーが! http://allabout.co.jp/gm/gc/50029/

ia080024
質問者

お礼

回答ありがとうございます。 症状としては仰るとおりなのですが、正常に処理されていた関数を使用したセルをコピペしても同様のエラーが出てしまい、関数の打ち間違いなどではないようです。

その他の回答 (1)

  • LHS07
  • ベストアンサー率22% (510/2221)
回答No.2

どのような関数でなにをしようとしているのですか?

ia080024
質問者

お礼

回答ありがちうございます。 せっかく回答を頂いたのに申し訳ございません。自己解決しました。 原因としてはマクロのセキュリティの設定で警告せずにマクロを無効にするようにになっていました。 そのため、bookを開き直すとマクロが実行されないバグのように見えていました。 ご迷惑をおおかけしました。

関連するQ&A

  • エクセル ファイルを読み込めませんエラー

    関数やマクロを組み込んだエクセルファイルを作成して、保存し、また開けようとすると、「ファイルを読み込めません」とエラーが出て、回復しますか?でOKにすると、マクロ、関数が失われてしまったファイルしか開けません。かなり苦労した作成したので、作り直さずに、もう一度正常に開くことはできませんか? バックアップのファイルはあります。バージョンは2003です。

  • VBAでWordを作ると出るエラー

    お世話になります。 ExcelVBAで、Wordを作成し、保存しようとすると、 下記のようなエラーが発生します。 『実行時エラー'462': リモートサーバーがないか、使用できる状態ではありません。』 しかも、毎回でなく、一回おきに発生するのです (つまり、一度は動作して、再び行うとエラーが出る)。 原因と対策を教えてください。 以上、宜しくお願い致します。

  • Word2000のVBAでエラーが出ます

    VBA初心者です。Word2000上でExcel2000並べ替え用VBAを作成しまが、「名前付き引数が見つかりません」のエラーが出ます。 Sub Sort() Dim objExcel As Excel.Application Dim tmpBook As Excel.Workbook Set objExcel = CreateObject("Excel.Application") Set tmpBook = Workbooks.Open("C:\Dic1.xls") Range("A1:B100").Select Selection.Sort Key1:=Range("A1"), _ Order1:=xlAscending, _ Header:=xlGuess, _ OrderCustom:=1, _ MatchCase:=False, _ Orientation:=xlTopToBottom, _ SortMethod:=xlPinYin tmpBook.Close True objExcel.Quit End Sub Excel2000上で同様のマクロを作成すると、正常に動作します。初歩的な質問で申し訳ありませんが、どなたか御教授をお願い致します。

  • VBAエラー

    お世話になります。早速ですが、、、 Sub ●() Selection.FormulaR1C1 = "●" With Selection.Font .Name = "MS Pゴシック" .Size = 11 .Underline = xlUnderlineStyleNone .ColorIndex = xlAutomatic End With End Sub これは、自動記録でのマクロですが、実行されるセル以外の保護と、 併せてシート保護を掛けた状態で実行すると下記エラーが出ます。 実行時エラー '1004': 『 Font クラスの Name プロパティを設定できません。』 エラーの終了ボタンを押すことで何もなかったかのように治まりますが、実行のたびにエラー出力します。 但し、この自動マクロは、エクセル2000上で作成したもので、2000上で実行するとエラーは出ませんが、 2002上で実行すると発生します。何が悪いのでしょうか?

  • Excel VBA Macroが突然消えるー後記

    NuboChanから紹介されたURLを辿り、記載内容を参考に、徹底的に解決に努めました。(それだけこの問題には困らされております) お陰でいろいろこの問題解決以外に多くの知識を取得することが出来ました。Officeを旧いバージョンに戻す方法などはこれからも役立つと思います。ただ、いろいろ試しても問題解決には至りませんでした。 ”バックアップから破損前のファイルを持ってきて開いてやると一度は正常に開く(マクロも動作する)  但し、上書き保存してしまうと、再度開いた時にはもう壊れている。”と本当に信じられないような現象が私の場合も同じように起こりました。 SSDに保存していたバックアップファイルをPCのHDDにコピーし、それを開いても同様の現象が出てマクロが全部消えてしまうので、新たにゼロからファイルをこつこつと作り替えるような操作をしておりました。ある程度進んだところで今度はそのファイルが開けなくなってしまいました。(Excelは反応していませんとなり、フリーズの状態。何度やっても同じ現象で本当に困り果てています。)再度、ファイルを作り替えています。 これだけ多くの方が困っているとの報告を見てMicrosoft側で何か手当してくれるかと期待してはおります。 それ以外に、再現はできなかったし、何をどうしたかも分かりませんが、突然、これまで全くダメだったファイルのマクロが全部現れ、使えたのです。しかし、喜びも束の間、しっかりディスクに保存して開いたら元の木阿弥となってしまいました。 この問題の解決方法が現れたら、是非、公開お願いします。 バックアップから破損前のファイルを持ってきて開いてやると一度は正常に開く(マクロも動作する) 但し、上書き保存してしまうと、再度開いた時にはもう壊れている。

  • VBAで名前定義を変更するとき

    おはようございます。 ExcelVBAで教えてください。 名前の定義はマクロの自動記録で解りました。 ActiveWorkbook.Names.Add Name:="名前A", RefersToR1C1:="=参照範囲" のようになりました。 VBAで参照範囲を変更したいとき、どのようにするのでしょうか? 再度、ActiveWorkbook.Names.Add Name:="名前A", RefersToR1C1:="=参照範囲" としてもエラーにはならなかったのですが、すでに"名前A"があるのに Names.Addとするのはおかしいかと思いました。 それで、どのようにするのかお教えください。

  • Excel VBA

    今、Excel2000で作成したEXcelブックをExcel2007でも正常に動作するか確認しています。 伝票のようなもので、枠内に数字を記入後、保存する際に別のブックにセルの全コピーしてから保存するようになっているのですが、Excel2007で実行すると列幅と行幅がコピーされません。 Set NewBook = Workbooks.Add Workbooks(ThisWorkbook.Name).Sheets("伝票").Cells.Copy NewBook.Sheets("Sheet1").Activate ActiveSheet.Paste Excel2003で動かしたときは、大丈夫でした。 原因がわかりません。コピーの仕方がいけないのでしょうか。

  • VBAのエラーについて

    エクセル2007 でマクロのコードを書いています。 開発画面からマクロを実行するとうまくいくのに、エクセルのシートに配置したボタンにそのマクロを登録して実行するとエラーが出てしまいます。 標準モジュールに UserForm1.showを書いており、UserForm1上に配置したコマンドボタンによってUserForm2を表示させているのですが、UserForm2が出る前に、「問題が発生したために、Microsoft Office 2007 Excelを・・・・・・」というような画面が出て強制終了されます。(UserForm1、UserForm2とも modelessで表示しています。) また、開発画面から1度実行すれば、シートに配置しマクロを登録したボタンからでも実行できるようになるのですが、一度、そのブックを保存してから改めて開くと、同じような症状が出てしまいます。 UserForm2のInitializeに問題があるのだと思い、そこのコードをじっくりと見た結果、UserForm2にあるPageの中に配置した特定のComboBoxとCommandButtonに関する処理を非表示にするとエラーが出ないことが判明しました。しかし、それらについての処理は、他のComboBoxなどと同じ処理(セルの値を読み込むような)をしているもので、名前などのミスもありません。(というか、開発画面からの実行では正常に動きます。) ただ、共通していることとしては、そのエラーが出る特定のComboBoxとCommandButtonは、最後の最後で思いついて配置したものであるということだけなのです。  ずっと、いろいろな方向から試しているのですが、わかりません。複雑な説明で申し訳ないのですが、なにかしら情報をお願いします。

  • VBAの保存方法

    WordなどでVBAを使った後に、そのファイルにそのVBAのプログラムを保存しておいて、 また開いたときに使いたいのですが、 VBAの画面でCtrl+SをしてもWordを閉じて再度開いた時には何も画面に出てきません。 これは保存されているけど出てこないだけなのでしょうか、それともVBAはコマンドなどで保存しなくてはならないのでしょうか? だとしたら、保存出来るコマンドを教えて頂いても良いでしょうか。 http://www.officepro.jp/excelvba/book_new/index5.html などを見てみましたが、どうしてもわからないので、保存だけが出来るコマンドについて教えて頂ければ助かります。 宜しくお願いします。

  • こんにちは。エクセルで分からないことがあります。

    こんにちは。エクセルで分からないことがあります。 マクロ作成中、関数に不備があると#NAME?とか#DEFとか#VALUE?とか出るのですが、 これが出ても、#NAME?⇒空白に置き換えが出来るようにしたいのですが、 できますか? 条件付書式で#NAME?と等しい時、空白というようにやればよいですか?

専門家に質問してみよう