Hier sind zwei Optionen:
- Verwenden Sie in einem zusammenfassenden Arbeitsblatt die
INDIRECT
Funktion in Kombination mit einer Tabelle mit Pfad, Arbeitsmappe, Blatt und dem Namen der Summenzelle für jede Abteilung. Die Funktion INDIRECT gibt die durch eine Zeichenfolge angegebene Referenz zurück. Wenn beispielsweise Zelle A1 die Zeichenfolge "Sheet1! D19" enthält, gibt = INDIRECT (A1) den Wert in Zelle D19 von Sheet1 aus.
Sie benötigen also eine Reihe von Zellen im Zusammenfassungsblatt, die Verweise auf die Zelle (n) in jeder Abteilungsarbeitsmappe enthalten, die die Besetzung der Abteilung zusammenfassen. Die Tabelle zum Erstellen dieser Verweise und die zugehörigen Formeln sehen möglicherweise so aus.
Die Formeln für die Personalstärke der einzelnen Abteilungen in Spalte F des Bildes ergeben gültige Zellreferenzen in den Arbeitsmappen der Abteilungen. Ich habe beschlossen, die Formeln aus Verweisen in einer Tabelle zu erstellen, um Flexibilität zu gewährleisten. Nur die Tabelleneinträge müssen geändert werden, wenn sich beispielsweise die Liste der Arbeitsmappen ändert, die enthalten sein müssen, und nicht die Formeln selbst.
Diese Formeln werden nur aktualisiert, wenn die Arbeitsmappen, auf die sie verweisen, geöffnet sind. Wenn die Arbeitsmappe einer Abteilung geschlossen ist, gibt die Gesamtbelegschaftsformel für diese Abteilung im Zusammenfassungsblatt ein #REF! Fehler beim Neuberechnen des Wertes. Mit anderen Worten, Sie können keine Daten aus einer geschlossenen Arbeitsmappe abrufen.
- Verwenden Sie eine VBA-Funktion oder -Unterroutine, die Daten aus einer geschlossenen Arbeitsmappe extrahieren kann.
Es gibt eine Reihe verschiedenen Ansätze , dies zu tun, auch diese Funktion , von John Walkenbach auf der Website, die nur funktioniert , wenn in einem VBA - Verfahren und verwendete diese , die in einem Arbeitsblatt direkt nutzbar ist. Ich habe beide getestet und sie funktionieren wie behauptet.