読者です 読者をやめる 読者になる 読者になる

おでんはじめました。

required ちくわぶ and 巾着,optional はんぺん.

Excel/C#でdynamic型からWorksheet型へキャストができない

はまったのでメモ。
ExcelC#で扱ってて.Net Framework4.0に上げたら、

Workbook book;
...
((Worksheet)book.Sheets[1]).SaveAs(path);

コンパイル通らないけど、

book.(Sheets[1] as Worksheet).SaveAs(path);

は通る。

error CS1969: 動的な式のコンパイルに必要な 1 つ以上の型が見つかりません。参照が指定されていることを確認してください。

そもそもキャストしないでも動くはずなのだけど、SheetとWorksheetと_Worksheetの型があるからこれが原因でキャストが必要なのか?
dynamicの仕組みがよくわからないのでまた後日調べる。

参考:
読ませてもらったけど難しい。
Excel遅延バインディング : ヒロの趣味ブログ