David fragt sich, ob sich Zellreferenzen in einem Makro beim Hinzufügen oder Löschen von Zeilen ändern können, ähnlich wie eine Formel auf solche Änderungen reagiert.

Wenn Sie auf eine Zelle in einem Makro verweisen, z. B. auf Range („B6“), behandelt VBA diese Referenz als absolut, was bedeutet, dass sie sich nicht ändert.

Selbst wenn Sie Zellen hinzufügen oder löschen, die sich darauf auswirken, wo sich die Informationen in B6 befinden, bleibt die Makroreferenz unverändert.

Der Weg, dies zu umgehen, besteht darin, keine direkten Verweise auf Zellen in Ihren Makros zu verwenden. Verlassen Sie sich stattdessen auf benannte Bereiche. Definieren Sie in Excel einen Namen für Zelle B6 (z. B. „MyData“) und verwenden Sie diesen Namen dann in der Referenz in Ihrem Makro wie in Range („MyData“). Dieser Ansatz funktioniert, weil VBA den Namen nachschlägt, um festzustellen, auf welche Zelle verwiesen wird, und Excel sicherstellt, dass die benannten Bereichsreferenzen beim Hinzufügen oder Löschen von Zellen auf dem neuesten Stand bleiben.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (7250) gilt für Microsoft Excel 97, 2000, 2002 und 2003. Eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Excel (Excel 2007 und höher) finden Sie hier: