Workbook SourceFile = oXLSrc.Workbooks.Open(Path.GetFileName(fileName), true);
TestSheet.get_Range("E33", Type.Missing);
Sheet有一个值,它是一个ComboBox和数据验证。此ComboBox值来自另一个工作表。当我在C#中打开Excel时,所有值都为NULL。但是,当我在常规Excel中打开它时,它运行良好,数据就在那里。我错过了什么?
答案 0 :(得分:0)
仅基于上面的代码,您不会将get_Range()的结果赋给变量。我期待看到类似......
private Workbook m_Workbook; // The currently opened Excel file
...
dynamic cellValue;
Worksheet sheet = null;
try
{
sheet = (Worksheet)m_Workbook.Worksheets[0];
cellValue = sheet.get_Range("E33").Value2;
}
catch (Exception e)
{
...
数据验证或组合框不应该考虑到这一点。 有关Text vs Value vs Value2的信息,请参阅https://fastexcel.wordpress.com/2011/11/30/text-vs-value-vs-value2-slow-text-and-how-to-avoid-it/