Excelのオートメーションでは、どのように優雅にファイルがオープンされたときに、無効なファイル形式エラーを処理するには?

StackOverflow https://stackoverflow.com/questions/390920

  •  23-08-2019
  •  | 
  •  

質問

私は「excelApp.Workbooks.Open()」メソッドを使用してC#プログラムでMicrosoft Excelファイルを開くしようとしています。偶然にも、ファイルの形式が無効である場合、このメソッドはエラーメッセージボックスが表示されます。私は、しかし、それを望んでいません。私は自分のコードで優雅にこのエラーを処理したい。

私の質問があり、私はそれをどのように行うのですか?

上記の方法は、私がキャッチすることができます任意の例外をスローしません。それがなかった場合でも、その厄介なメッセージボックスがとにかくまだあります。だから、おそらく唯一の方法は、のそれを開く前に、<全角>のファイル形式を検証することです。そのような検証を可能にするためにExcelのAPI内の別の方法は、その後、ありますか?

役に立ちましたか?

解決

私は申し訳ありませんが、私は、Excel 2007で壊れたXLSファイルの例をシミュレートすることはできませんしています。

Workbooks.Open ...

を呼び出す前に、偽= Application.DisplayAlertsをお試しください ワークブックを開くことができない場合は、

、戻り値はnullになります。
(すなわち、ワークブックWKB = Workbooks.Open(....)。 ときはFalseとファイルがopendedすることができませんでしたDisplayAlertsの=)

WKBはnullになります

これは純粋に私はExcelオブジェクトモデルの理解何に基づいています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top