Rückverfolgung von Präzedenzfällen und Angehörigen in Aspose.Cells

Ablaufverfolgung Präzedenzfall und abhängiger Cells: Microsoft Excel

Formeln können sich aufgrund von Änderungen ändern, die von einem Kunden vorgenommen wurden. Wenn beispielsweise Zelle C1 von C3 und C4 abhängig ist, die eine Formel enthalten, und C1 geändert wird (so dass die Formel überschrieben wird), müssen C3 und C4 oder andere Zellen geändert werden, um die Tabelle basierend auf Geschäftsregeln auszugleichen.

Angenommen, C1 enthält die Formel “=(B122)/(M2N32)”. Ich möchte die Zellen finden, von denen C1 abhängt, also die vorangegangenen Zellen B1, M2 und N32.

Möglicherweise müssen Sie die Abhängigkeit einer bestimmten Zelle von anderen Zellen nachverfolgen. Wenn Geschäftsregeln in Formeln eingebettet sind, möchten wir die Abhängigkeit herausfinden und einige Regeln darauf basierend ausführen. Wenn der Wert einer bestimmten Zelle geändert wird, welche Zellen im Arbeitsblatt sind von dieser Änderung betroffen?

Microsoft Excel ermöglicht es Benutzern, Präzedenzfälle und Abhängige zu verfolgen.

  1. Auf derSymbolleiste anzeigen , wählenFormel Auditing. Das Dialogfeld “Formelprüfung” wird angezeigt. Das Dialogfeld “Formelprüfung”.

todo: Bild_alt_Text

  1. Präzedenzfälle verfolgen:
  2. Wählen Sie die Zelle aus, die die Formel enthält, für die Sie vorangegangene Zellen suchen möchten.
  3. Um einen Verfolgungspfeil zu jeder Zelle anzuzeigen, die direkt Daten für die aktive Zelle bereitstellt, klicken Sie aufPräzedenzfälle verfolgen auf derFormel Auditing Symbolleiste.
  4. Verfolgen Sie Formeln, die auf eine bestimmte Zelle verweisen (abhängige Zellen)
  5. Wählen Sie die Zelle aus, für die Sie die abhängigen Zellen identifizieren möchten.
  6. Um einen Verfolgungspfeil zu jeder Zelle anzuzeigen, die von der aktiven Zelle abhängig ist, klicken Sie in der Symbolleiste „Formelprüfung“ auf Abhängigkeiten verfolgen.

Verfolgung von Präzedenzfällen und abhängigen Cells: Aspose.Cells

Präzedenzfälle verfolgen

Aspose.Cells macht es einfach, Präzedenzzellen zu erhalten. Es kann nicht nur Zellen abrufen, die Daten für einfache Formelpräzedenzfälle bereitstellen, sondern auch Zellen finden, die Daten für komplexe Formelpräzedenzfälle mit benannten Bereichen bereitstellen.

Im folgenden Beispiel wird eine Excel-Vorlagendatei, Book1.xls, verwendet. Die Tabelle enthält Daten und Formeln auf dem ersten Arbeitsblatt.

Die Eingabetabelle

todo: Bild_alt_Text

Aspose.Cells stellt die GetPrecedents-Methode der Cell-Klasse bereit, die verwendet wird, um die Präzedenzfälle einer Zelle zu verfolgen. Es gibt eine ReferredAreaCollection zurück. Wie Sie oben sehen können, enthält Zelle B7 in Book1.xls eine Formel „=SUMME(A1:A3)“. Die Zellen A1:A3 sind also die Vorgängerzellen von Zelle B7. Das folgende Beispiel demonstriert das Tracing-Precedence-Feature unter Verwendung der Vorlagendatei Book1.xls.

C#

 //Instantiating a Workbook object

Workbook workbook = new Workbook("book1.xls");

Cells cells = workbook.Worksheets[0].Cells;

Aspose.Cells.Cell cell = cells["B7"];

//Tracing precedents of the cell B7.

//The return array contains ranges and cells.

ReferredAreaCollection ret = cell.GetPrecedents();

//Printing all the precedent cells' name.

if(ret != null)

{

  for(int m = 0 ; m < ret.Count; m++)

  {

    ReferredArea area = ret[m];

    StringBuilder stringBuilder = new StringBuilder();

    if (area.IsExternalLink)

    {

        stringBuilder.Append("[");

        stringBuilder.Append(area.ExternalFileName);

        stringBuilder.Append("]");

     }

     stringBuilder.Append(area.SheetName);

     stringBuilder.Append("!");

     stringBuilder.Append(CellsHelper.CellIndexToName(area.StartRow, area.StartColumn));

     if (area.IsArea)

      {

          stringBuilder.Append(":");

          stringBuilder.Append(CellsHelper.CellIndexToName(area.EndRow, area.EndColumn));

      }


      Console.WriteLine(stringBuilder.ToString());

   }

}

Abhängigkeiten verfolgen

Mit Aspose.Cells können Sie abhängige Zellen in Tabellenkalkulationen abrufen. Aspose.Cells kann nicht nur Zellen abrufen, die Daten zu einer einfachen Formel liefern, sondern auch Zellen finden, die Daten zu komplexen Formelabhängigen mit benannten Bereichen liefern.

Aspose.Cells stellt die GetDependents-Methode der Cell-Klasse bereit, die verwendet wird, um die abhängigen Elemente einer Zelle zu verfolgen. Beispielsweise gibt es in Book1.xlsx Formeln: „=A1+20“ und „=A1+30“ in den B2- bzw. C2-Zellen. Das folgende Beispiel zeigt, wie die abhängigen Elemente für die A1-Zelle mithilfe der Vorlagendatei Book1.xlsx nachverfolgt werden.

C#

 string path = "Book1.xlsx";

Workbook workbook = new Workbook(path);

Worksheet worksheet = workbook.Worksheets[0];

var c = worksheet.Cells["A1"];

var dependents = c.GetDependents(true);

foreach (var dependent in dependents)

{

     Debug.WriteLine(string.Format("{0} ---- {1} : {2}", dependent.Worksheet.Name, dependent.Name, dependent.Value));

}

Laufcode herunterladen

Beispielcode herunterladen