• ベストアンサー

Excelのエラー

Excel97を使っています。 Excelファイルを保存する時、以下のようなエラーが出ます。 ---&H8000FFFF(-2147418113):システムエラー--- 同じエラーが数回出た後、ファイルを開き直すと、 変更箇所はきちんと保存されているようです。 (詳細まで確認したわけではありません) (エラーの回数は6回がほとんどで、時々3回しか出ない時もあります。全く出ない時もあります。) VBAを使ってユーザーフォーム等を作っているせいでしょうか? 宜しくお願いします。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

同じようなエラーを見た記憶があります。 Excel2000で作ったファイルを、Excel97でも読めるように保存し、 別のPCでExcel97で開いて、保存する時にそのまま上書きした時に出たような…(VBAは含んでいました) Excel97で保存する時、Excelブック(ファイルの種類の最上段の*.xls)を指定することでエラーは出なくなりました。 ご参考に。

p-leisure
質問者

お礼

問題のあるファイルのコピーをいくつか作って、いろんなことを試していたので、 どれがどれだか分からなくなってしまいました。(-_-;) マクロを外したので、とりあえず解決したのですが、nishi6さんのおっしゃる通り、 >Excel2000で作ったファイルを、Excel97でも読めるように保存し、 まさにこの通りだったような気がします。 ありがとうございました。

その他の回答 (1)

  • mnabe
  • ベストアンサー率33% (427/1283)
回答No.1

>VBAを使ってユーザーフォーム等を作っているせいでしょうか?  まずこう思っているのなら、VBAが無いファイルで試してみるのがよいと思います。  OKなら、VBAの問題  NGなら、Excel97又は環境の問題 NGの場合は、以下の情報も併せて書いて下さい。  OSは?  IEは?  他のOFFICEアプリケーション(WORD等)でも同様の現象になるの??

p-leisure
質問者

補足

説明不足で申し訳ありませんでした。 VBA無しではエラーはありません。 No.2のお礼を参照して下さい。 ありがとうございました。

関連するQ&A

  • エクセルでのオートメーションエラー

    たびたびお世話になっております。 excel2000のVBAでユーザーフォームを作成し、ユーザーフォーム上のコマンドボタンで処理を実行しています。処理はワークシート上の計算を実行したり、メールに添付し送信したり・・・です。この実行後にもう一度ユーザーフォームを開こうとすると、(ユーザーフォーム.show)まず、パス名が無効です、のエラー。ワークブックを保存し閉じようとすると(これもユーザーフォームのコマンドボタン)、オートメーションエラーです、となります。ユーザーフォームを閉じ、excelを終了しようとすると、EXCELは終了できません。となってしまいます。 なぜ?どーして?チンプンです。 ちなみにその後、もう一度同じワークブックを開こうとすると、使用中になり、 読取専用でしか開けません。 どうか、教えてください。

  • エクセルVBAでVBAの修正は出来るのでしょうか?

    エクセルVBAでVBAの修正は出来るのでしょうか? あるエクセルファイルにマクロを組み込んでいます(ユーザーフォームも使用)。 このエクセルファイルを複数個フォルダ内にコピーしています。 このコピーした全てのファイルのマクロの修正をVBAで出来ないかと考えています。 修正箇所はモジュール内のコード修正、モジュールの追加、既存のユーザーフォームにボタン等の追加等です。 エクセルは2003を使用しています。 どなたか教えてください。

  • EXCEL VBA ユーザーフォームを修正するとエラーになります

    いつもお世話になっております。 同じような入力作業の手間を省くため、 Excel VBAでユーザーフォームを作りました。 うまく動作するのですが、更に改良を加え、操作を楽にすることを考えました。 プログラムをまとめ、ユーザーフォームに貼り付けてある ボタンを減らそうとしているのですが、ボタンを削除すると、次そのフォームを表示しようとした時、エラーが出ます。 デバックを押すと、userform.show のところが黄色くなります。 一度できあがってしまったユーザーフォームに改良を加える時(主にそこの部品を減らす時)はどうすればいいのでしょうか。 ぜひ、よろしくお願いします。

  • エクセルVBAのエラーについて

    以前のPC(Windows2000、Office2000)で作成したエクセルファイルのVBAを新しいPC(WindowsXP、Office2003)で修正し保存したところ古いPCでVBAのコンパイルエラーが出るようになってしまいました。 TrimとかMidのような極く基本的命令でエラーになっております。 イミディアットウィンドウで該当命令個所をPrint文で表示させようとしても命令が認識されません。 何が原因なのでしょうか?どのように対応すればよろしいのでしょうか? よろしくお願い申し上げます。

  • Excel2003でメモリ不足のエラーが発生する

    Excel2003で簡単なテキストボックス+ラベルのフォームと、簡単なVBAを記述したファイルを作成しました。 しばらく使用していると、保存時や作成したフォームをVBEで開こうとする際、以下のエラーが表示されます。 「システムエラーです。: &8000FFFF(-214748113) 致命的なエラーです」 ↓ 「メモリが不足しています」 使用しているパソコンはWindowsXP SP2、メモリは1.5GBあります。 解決のため、何かアドバイスありましたらお願いします。 補足事項等いる場合、お手数ですが指摘して頂ける幸いです。

  • EXCEL2000VBAのアプリケーションエラーについて

    EXCEL2000VBAにてユーザーフォームを使ったマクロを作ったのですが、マクロを実行しユーザーフォームからエクセルのシートにデーターを移行する際に、アプリケーションエラーというエラーがでます。 他のイベントプロシージャの動作ではこのエラーは発生しません。 EXCEL2003でも発生しました。 はっきり分かりませんが、必ずアプリケーションエラーが生じるのではなく、1,2度保存や終了を繰り返した後に発生するようです。 アプリケーションエラーどういった場合に発生するのでしょうか? また、なぜこのようなことが発生するのでしょうか? 初心者ですのでよろしくお願いいたします。

  • エクセルVBA ユーザーフォームをオブジェクトとしてセットする書き方?

    いつもご回答頂きありがとうございます。 エクセルVBAでユーザーフォームをオブジェクト変数として セットする書き方を教えていただけないでしょうか? エクセルVBAでAファイルとBファイルがあり AファイルのVBAからBファイルを開いて、データを取得し Aファイルに記入していく。と言うVBAを作成しました。 ただ、BファイルにはopenイベントでBファイルに作成された ユーザーフォームがloadされるようになっていて、 AファイルからBファイルを開けたとき、そのユーザーフォームを 消したいのですが、消す方法が分かりません。 AファイルからBファイルをopenメソッドを用いたあと、ユーザー フォームを消せばいいと思うのですが、書き方が分からず困って おります。 オブジェクトとしてセットして、そのオブジェクトをunloadすれば いいかな?とか思っているのですが、セットの仕方もわからず、、、 宜しくお願いいたします。 それぞれのファイル名を「ファイルA」、「ファイルB」、 ユーザーフォーム名を「UserFormB」としたとき、どのように 書けばよろしいでしょうか?

  • Excelが閉じてしまう

    MO内に保存されたファイルを開こうとしても何もエラーが発生せず、Excelが閉じてしまう。 詳細は以下の通り (1)開けないファイルは約3MB (2)ローカルに保存しても開けない (3)他にもいくつか開けないファイルがあるが開けるファイルもある (4)同じ部署内の他のPCでも現象が発生し開けない (5)他の部署のユーザーで約3MBのファイル(開けないファイル)を開けるユーザーがいる(現在、確認できたのは1名のみ)

  • エクセル VBA ユーザーフォームで検索したいのですが

    つい昨日触り始めた大初心者です。。 エクセルシートにて 数値を記した列と、詳細を記した列があります。 ユーザーフォームにて textboxに数値を入力し、ボタンをクリックすると 検索をして、ユーザーフォーム内のlabelに詳細が表示される、といったvbaを書いているのですが、どうにもうまくいきません。 また、textboxに検索範囲にない数値が入力されたときには Labelに「なし」と表示させたいのですが、 エラーが出てしまい、その処理もやはりうまく出来ません。 どなたかご教授いただけますでしょうか。

  • VBAダイアログをキャンセルしてもフォーム表示

    エクセルのVBAについて質問です。 ユーザーフォームから保存ダイアログを開いた時に一旦ユーザーフォームに戻りたい場合、 保存ダイアログ上でキャンセル押してもユーザーフォーム上で引き続き操作できるようにするには どのようなコードを書けばいいでしょうか。

専門家に質問してみよう