In Excel Zirkelbezⁿge vermeiden

Ich m÷chte unter Excel zum aktuellen Wert in der Zelle A1 kontinuierlich die verΣnderten Werte einer anderen Zelle addieren. Wenn ich jedoch in die Zelle A1 die Formel =A1+B1 eingebe, meldet Excel einen Zirkelbezug und bricht ab. Was mache ich falsch? Gibt es eine andere M÷glichkeit dafⁿr?

Es gibt tatsΣchlich einen anderen L÷sungsweg, und der lΣ▀t sich auch kaum umgehen. Das wird klar, wenn man die Ursache Ihres Problems und des resultierenden Zirkelbezugs analysiert: Excel mu▀ an einer Stelle mit seinen Berechnungen anfangen k÷nnen. In Ihrem Beispiel ben÷tigt Excel aber bereits zur Berechnung des ersten Wertes fⁿr die Zelle A1 auch den aktuellen Wert aus eben dieser Zelle. Sie sind wahrscheinlich und ganz logisch davon ausgegangen, da▀ die Formel einen zeitlichen Ablauf hat: Das Ergebnis in A1 soll die Summe zweier Werte darstellen, von denen einer vorher schon in der Zelle A1 gestanden hat. Eine Tabellenkalkulation wie Excel kann jedoch immer nur die Werte aller Zellen zu genau einem Zeitpunkt unterscheiden. Bei Formeln, die dieser Logik widersprechen, bei▀en sich die Berechnungen quasi selbst in den Schwanz. Genau dann liegt auch ein Zirkelbezug vor, auf den Excel mit einer entsprechenden Meldung hinweist. Auf Wunsch kann Excel den Bezug sogar grafisch mit Linien und Pfeilen verdeutlichen, was besonders bei gro▀en ArbeitsblΣttern von Vorteil ist. Um den Zirkelbezug in Ihrem Fall zu umgehen, ben÷tigen Sie einen Speicher, der den Wert aus A1 oder die Formel fⁿr die Zeit der Berechnung zwischenlagert. Dieser Speicher kann beispielsweise eine weitere Zelle sein, die Sie mit einem Makro verwenden. Um ein neues Makro anzulegen, fⁿhren Sie den Befehl Extras û Makro û Makros aus und geben in das Feld Makroname den gewⁿnschten Namen ein. Anschlie▀end klicken Sie auf die SchaltflΣche Erstellen und geben die Zeilen aus dem Listing- Kasten oben ein. Die erste Zeile bewegt die Einfⁿgemarke relativ zur aktuellen Position eine Zelle nach unten (im Beispiel von B1 nach B2) und fⁿgt dort eine Formel zur Addition der Werte aus den Zellen links und direkt darⁿber ein (im Beispiel =A1+B1). Anschlie▀end kopiert das Makro den Inhalt der aktiven Zelle in die Zwischenablage und wechselt in die Zelle fⁿr den Ergebniswert (im Beispiel A1). Dort ⁿberschreibt das Makro den Inhalt mit dem Wert der soeben kopierten Summe. Zum Abschlu▀ l÷scht das Makro noch die zur Berechnung erzeugte Formel, um alles wieder sauber aufzurΣumen. Wenn Sie das Makro mehrfach hintereinander ausfⁿhren, erhalten Sie den gewⁿnschten Effekt fⁿr das kontinuierliche Aufsummieren des Wertes in A1. Dafⁿr sollten Sie das Makro am besten mit einer Tastenkombination verknⁿpfen. Klicken Sie dazu im Makro-Dialog erst auf den Makronamen und dann auf die SchaltflΣche Optionen. Die Zelladressen sind im Beispielmakro relativ. Sie k÷nnen es dadurch an jeder Stelle in einer Excel-Tabelle verwenden, solange das Eingabefeld direkt rechts vom Ergebnisfeld liegt. Falls Ihnen dies nicht zusagt, passen Sie jeweils die Parameter der Methode Range im Makro Ihren Wⁿnschen an. Der erste Parameter bestimmt immer die vertikale und der zweite die horizontale Bewegung.

Sub CycleSum () ╢
ActiveCell.Offset (1, 0).Range (ôA1ô).Select ╢
ActiveCell.FormulaR1C1 = ô=SUM (R [-1]C [-1]:R [-1]C)ô ╢
ActiveCell.Select ╢
Selection.Copy ╢
ActiveCell.Offset (-1, -1).Range (ôA1ô).Select ╢
Selection.PasteSpecial Paste:=xlValues,Operation:=xlNone, SkipBlanks:= False,Transpose:=False ╢
ActiveCell.Offset (1, 1).Range (ôA1ô).Select ╢
Application.CutCopyMode = False
Selection.ClearContents ╢
ActiveCell.Offset (-1, 0).Range (ôA1ô).Select ╢
End Sub ╢