Relativer Zellbezug?



Excel-Version: 10.0 (Office XP)
nach unten

Betrifft: Relativer Zellbezug?
von: Jan
Geschrieben am: 13.06.2002 - 14:37:42

Hallo,
stellt Euch mal folgendes Szenario vor:
Ein VBA-Makro steuert Tabelle "Tabelle1" an und schreibt in die Spalten 1,2 und 3 jeder Zeile Daten. (Per Worksheets("Tabelle1").Cells(zeile,1)="..." etc)

Nun soll in Tabelle 1 eine Spalte eingefügt werden (z.B. zwischen Spalte 1 und Spalte 2), um zusätzliche Daten in der Tabelle verbuchen zu können (sicher, man könnte einfach Spalte 4 als neue Spalte verwenden, aber das Salz in der Suppe ist hier nun mal das Einfügen einer neuen Spalte zwischen bereits belegte).

Meine Frage nun: Gibt es eine intelligente (=schnelle) Möglichkeit, das Makro auf das neue Szenario umzustellen? Bisher habe ich, bezogen auf das Beispiel, an jeder Stelle, die Spalte 2 ansteuert, eine 3 gesetzt, bei Spalte 3 eine 4 usw.

Gruß
Jan

nach oben   nach unten

Re: Relativer Zellbezug?
von: Martin Beck
Geschrieben am: 13.06.2002 - 14:51:28

Hallo Jan,

ad hoc und ungetestet würde ich folgendes vorschlagen.

Schreibe statt

Worksheets("Tabelle1").Cells(zeile,1) etc.

Worksheets("Tabelle1").Cells(zeile,Sp1)
Worksheets("Tabelle1").Cells(zeile,Sp2)
Worksheets("Tabelle1").Cells(zeile,Sp3)

Definiere drei Konstanten, die Du wie folgt belegst:
Sp1 = 1
Sp2 = 2
Sp3 = 3

Wenn nun zwischen Spalte A und B eine neue Spalte eingefügt wird, belegtst Du in Deinem Code einfach die Konstanten Sp2 und Sp3 wie folgt neu:

Sp2 = 3
Sp4 = 4

Probier's mal aus und teile mit, ob das so funktioniert und ausreicht.

Gruß
Martin Beck

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Relativer Zellbezug?"