Microsoft.Office.Interop.Excel アセンブリを使用して Excel スプレッドシートからデータをエクスポート/インポートするアプリケーションを作成しています。条件付き書式設定を使用しようとするまで、すべてがうまくいきました (1 ベースのインデックス作成とすべてのオプションのパラメーターを除く!)。Range.FormatConditions.Add を呼び出すと、そのようなメソッドが存在しないことを示す MissingMethodException が返されます。これは、Vista と XP の両方で発生します。
例外を生成するコードの例を次に示します。
//1. Add a reference to Microsoft.Office.Interop.Excel (version 11.0.0.0)
//2. Compile and run the following code:
using Microsoft.Office.Interop.Excel;
class Program
{
static void Main(string[] args)
{
Application app = new Application();
Workbook workbook = app.Workbooks[1];
Worksheet worksheet = (Worksheet)workbook.Worksheets[1];
Range range = worksheet.get_Range("A1", "A5");
FormatCondition condition = range.FormatConditions.Add(
XlFormatConditionType.xlCellValue,
XlFormatConditionOperator.xlBetween,
100,
200);
}
}