使用原始值搜索数据
Contents
[
Hide
]
有时数据的价值是隐藏的,因为它是以某种方式格式化的。例如,假设单元格 D4 具有公式 =Sum(A1:A2) 且其值为 20 但其格式为 —,则值 20 被隐藏并且无法使用 Microsoft Excel 查找选项找到。但是,您可以使用 Aspose.Cells 找到它LookInType.OriginalValues
以下示例代码说明了上述观点。它找到使用 Microsoft Excel 查找选项无法找到的单元格 D4,但 Aspose.Cells 可以使用LookInType.OriginalValues.请阅读代码中的注释以获取更多信息。
C# 使用原始值搜索数据的代码
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create workbook object | |
Workbook workbook = new Workbook(); | |
// Access first worksheet | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Add 10 in cell A1 and A2 | |
worksheet.Cells["A1"].PutValue(10); | |
worksheet.Cells["A2"].PutValue(10); | |
// Add Sum formula in cell D4 but customize it as --- | |
Cell cell = worksheet.Cells["D4"]; | |
Style style = cell.GetStyle(); | |
style.Custom = "---"; | |
cell.SetStyle(style); | |
// The result of formula will be 20 but 20 will not be visible because the cell is formated as --- | |
cell.Formula = "=Sum(A1:A2)"; | |
// Calculate the workbook | |
workbook.CalculateFormula(); | |
// Create find options, we will search 20 using original values otherwise 20 will never be found because it is formatted as --- | |
FindOptions options = new FindOptions(); | |
options.LookInType = LookInType.OriginalValues; | |
options.LookAtType = LookAtType.EntireContent; | |
Cell foundCell = null; | |
object obj = 20; | |
// Find 20 which is Sum(A1:A2) and formatted as --- | |
foundCell = worksheet.Cells.Find(obj, foundCell, options); | |
// Print the found cell | |
Console.WriteLine(foundCell); | |
// Save the workbook | |
workbook.Save(dataDir + "output_out.xlsx"); |
示例代码生成的控制台输出
这是上述示例代码的控制台输出。
Aspose.Cells.Cell [ D4; ValueType : IsNumeric; Value : ---; Formula:=SUM(A1:A2)]