[XL2000]SaveAsメソッドで保存に失敗したときエラーメッセージが返されない

文書翻訳 文書翻訳
文書番号: 269521 - 対象製品
この記事は、以前は次の ID で公開されていました: JP269521
この資料は、アーカイブされました。これは "現状のまま" で提供され、更新されることはありません。
すべて展開する | すべて折りたたむ

目次

概要

この資料は、 Excel 2000 で VBA の SaveAs メソッドを実行してファイルを保存する場合、保存に失敗してもエラー メッセージが表示されない現象について説明しています。

現象

Excel 2000 で Microsoft Visual Basic Programming System Applications (以下 VBA) の SaveAs メソッドを実行してファイルを保存している間に、ほかのプログラムがファイルをロックすると、8 桁の 16 進数のファイル名 (例えば、B6E600000、E2C94000 など) を持つテンポラリ ファイルにデータが残されますが、元のファイルは更新されません。その際、保存に失敗したことを示すエラー メッセージは表示されず、ファイルを再び開いたときにデータが保存されていないことが判明します。

再現手順

  1. ネットワークで接続され、Excel 2000 のインストールされた 2 台のコンピュータ PC 1、PC 2 を用意します。
  2. PC 1 のルートドライブ (C ドライブ) にあるフォルダ名 Shared のフォルダを共有します。
  3. 共有フォルダ Shared 内に Excel ファイル Book1.xls を作成します。
  4. PC 1 上で Book1.xls を開き Sheet1 の A1:B65536 の各セルに「=INT(RAND()*10)」と入力します。
  5. Visual Basic Editor を起動し、Book1.xls に以下のマクロを挿入します。
         Sub SaveAsTest()
             ActiveWorkbook.SaveAs FileName:="C:\Shared\Book1.xls"
         End Sub
    
  6. [ファイル] メニューから [上書き保存] を選択して Book1.xls を保存します。
  7. Book1.xls の Sheet1 の C1:D65536 の各セルに「=INT(RAND()*10)」と入力してBook1.xls のデータに変更を加えます。
  8. PC 1 上で、Book1.xls を開いたまま、PC 2 上で Excel を起動します。
  9. PC 2 上で [スタート] メニューの [ファイル名を指定して実行] を選択し、次のように入力します。 "\\PC1\Shared"
  10. PC 2 上で表示された共有フォルダ Shared 内に Book1.xls が存在しているのを確認します。
  11. PC 1 上の Book1.xls でマクロ SaveAsTest を実行すると "この場所に 'C:\Shared\Book1.xls' という名前のファイルが既にあります。置き換えますか?" というメッセージが表示されます。
  12. 手順 11. のメッセージで [はい] を選択し、VBA の SaveAs メソッドが実行されている間に、PC 2 上で共有フォルダ Shared 内の Book1.xls をダブルクリックして Book1.xls ファイルを開きます。
  13. PC 2 上の Excel に "Book1.xls はマクロを含んでいます。" という警告が表示されるので [マクロを有効にする] をクリックします。
  14. PC 2 上の Excel に "Book1.xls は編集のためロックされています。" というメッ セージが表示されるので、[通知] をクリックします。
  15. PC 1 上でマクロが実行中であることを確認し、しばらく待ちます。
  16. PC 2 上の Excel で "Book1.xls は編集できるようになりました。" というメッセージが表示されるので、[編集] をクリックします。
  17. PC 1、PC 2 上でそれぞれ [ファイル] メニューから [閉じる] を選択して Book1.xls を保存せずに閉じます。

結果

  • PC 1 上で共有フォルダ Shared を開くと、フォルダ内に 8 桁の 16 進数のファイル名を持つテンポラリ ファイルが作成されています。
  • Book1.xls を開くと、手順 7.で変更したデータが保存されていません。
  • 8 桁の 16 進数のファイル名を持つテンポラリ ファイルを開くと、手順 7 で変更した Book1.xls のデータが保存されています。

補足

手順 11. および 12. でマクロ SaveAsTest を使用せず、メニュー バーの [ファイル] から [名前をつけて保存] をクリックして Book1.xls を保存している間に、PC 2 から共有フォルダ Shared 内の Book1.xls を開こうとした場合、PC 1 上の Excel には以下のエラー メッセージが表示されます。
"変更を 'Book1.xls' に保存できませんでしたが、テンポラリ ドキュメント '(8 桁の 16 進数のファイル名を持つファイル)' に保存されました。既存のドキュメントを閉じて、テンポラリ ドキュメントを開き新しい名前を付けて保存してください。"

状況

この問題は、Microsoft Office 2000 Service Pack 2 (以下 Office 2000 SP-2) で修正しました。

回避策

この問題は Office 2000 SP-2 を適用することで解決できます。なお、このアップデートは、Office 2000 Service Release 1 (以下 Office 2000 SR-1) を対象とします。本修正プログラムをご利用になる前に、まず Office 2000 SR-1 を入手してください。Office 2000 SR-1 についての情報は以下のマイクロソフト Web サイトのページに記載されています。
http://www.officeupdate.com/japan/downloadDetails/2000/O2kSR1DDL.htm
Office 2000 SP-2 はマイクロソフトの Web サイトからダウンロードできます。以下のページを表示し、記載内容にしたがって修正プログラムをダウンロードしてください。
http://officeupdate.microsoft.com/japan/downloaddetails/2000/sp2upd.htm

補足

Office 2000 SP-2 を適用後、上記手順 11 および 12 でマクロ SaveAsTest を使用して Book1.xls を保存している間に、PC 2 から共有フォルダ Shared 内の Book1.xls を開こうとした場合、PC 2 上の Excel には以下のエラー メッセージが表示されます。
「'Book1.xls' にアクセスできません。ファイルは読取専用であるか、または読取専用の場所にアクセスしようとしています。または、サーバー上に保存されているドキュメントから応答がありません。」

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 269521 (最終更新日 2001-02-27) をもとに作成したものです。

プロパティ

文書番号: 269521 - 最終更新日: 2014年2月1日 - リビジョン: 3.3
この資料は以下の製品について記述したものです。
  • Microsoft Excel 2000 Standard Edition
キーワード:?
kbnosurvey kbarchive kbbug kbfix temporary テンポラリ error o2ksp2fix 一時 メッセージ xl9 ファイル 保存 message エラー 9.0 xl2000 saveas ドキュメント KB269521
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com