Excel Interop:Range.FormatConditions.Add抛出MissingMethodException

时间:2009-03-13 22:20:34

标签: .net excel com-interop conditional-formatting

我正在编写一个使用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);
    }
}

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

FormatConditions接口的Add()方法有8个参数,而不是4. AFAIK在此类型的Excel.Extensions命名空间中没有扩展方法。你在上面的例子中使用过扩展方法还是......?