Buscar datos usando valores originales
Contents
[
Hide
]
A veces, el valor de los datos está oculto porque está formateado de alguna manera. Por ejemplo, suponga que la celda D4 tiene la fórmula = Suma (A1: A2) y su valor es 20 pero tiene el formato —, entonces el valor 20 está oculto y no se puede encontrar usando Microsoft Opciones de búsqueda de Excel. Sin embargo, puede encontrarlo usando Aspose.Cells usandoLookInType.OriginalValues
El siguiente código de ejemplo ilustra el punto anterior. Encuentra la celda D4 que no se puede encontrar usando Microsoft Opciones de búsqueda de Excel pero Aspose.Cells puede encontrarla usandoLookInType.OriginalValues. Lea los comentarios dentro del código para obtener más información.
C# código para buscar datos usando valores originales
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"); |
Salida de la consola generada por el código de muestra
Aquí está la salida de la consola del código de muestra anterior.
Aspose.Cells.Cell [ D4; ValueType : IsNumeric; Value : ---; Formula:=SUM(A1:A2)]