#价值!包含用户定义函数的单元格中出现错误
本文关键字:单元格 错误 函数 价值 包含 用户 定义 | 更新日期: 2023-09-27 17:58:14
我需要以只读方式使用C#打开Excel工作簿。没有问题。但是,如果该工作簿是在打开自动筛选的情况下保存的,我需要使用c#将其关闭,这样我就可以将工作表值读取到我的类中。问题是,如果一个单元格中有一个用户定义的函数,那么该单元格将显示#VALUE!关闭自动筛选而不是其正确值时出错。如果我只使用Excel手动关闭自动筛选,这不是问题。所以我知道用户定义的函数本身没有问题。
以下是我正在做的:
Excel.Application app = new Excel.Application();
Excel.Workbook CIRworkbook;
var missing = Missing.Value;
bool openAsReadOnly = true;
CIRworkbook = (Excel.Workbook)(app.Workbooks.Open(xlsFile, missing, openAsReadOnly, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing));
app.get_Range("A:IV", missing).Worksheet.AutoFilterMode = false;
app.CalculateFull();
应用程序。CalculateFull()行对删除#VALUE无效!错误
尝试使用以下语法来获取工作表中包含值的所有单元格,而不考虑自动过滤器的打开/关闭或实际使用的过滤器。
我想这就是你想要的:
Worksheet currSheet = excelApp.ActiveWorkbook.ActiveSheet;
object[,] objData = (object[,])currSheet.UsedRange.Value2;
CCD_ 1成员保持小区/范围的下划线内容。如果要查找显示给用户的可见字符串,请使用Text
属性。