Interoperabilità di Excel: Range.FormatConditions.Add genera MissingMethodException
-
22-07-2019 - |
Domanda
Sto scrivendo un'applicazione che utilizza l'assembly Microsoft.Office.Interop.Excel per esportare / importare dati da fogli di calcolo Excel. Tutto andava bene (tranne per l'indicizzazione basata su 1 e tutti quei parametri opzionali!), Fino a quando non ho provato a utilizzare la formattazione condizionale. Quando chiamo Range.FormatConditions.Add ricevo una MissingMethodException che mi dice che non esiste un metodo simile. Questo accade in Vista e XP.
Ecco un esempio del codice che genera l'eccezione:
//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);
}
}
Soluzione
Questo potrebbe essere un buon collegamento per te: http://social.msdn.microsoft.com/Forums/en-US/vsto/thread/8a91d154-f766-427a-963c-16dfa39e154a/
Altri suggerimenti
Il metodo Add () per l'interfaccia FormatConditions ha 8 parametri, non 4. AFAIK non esiste un metodo di estensione nello spazio dei nomi Excel.Extensions per questo tipo. Hai usato un metodo di estensione nell'esempio sopra o ...?