Excel 2003: Problem mit Zellbezügen

Dieses Thema Excel 2003: Problem mit Zellbezügen im Forum "Microsoft Office Suite" wurde erstellt von IrksEye, 9. Aug. 2006.

Thema: Excel 2003: Problem mit Zellbezügen Hallo zusammen, ich steh grad irgendwie auf dem Schlauch. Und zwar habe ich eine Tabelle, in der nur bestimmte...

  1. Hallo zusammen,

    ich steh grad irgendwie auf dem Schlauch.
    Und zwar habe ich eine Tabelle, in der nur bestimmte Spalten zur Bearbeitung freigegeben sind. Die anderen Spalten sind gesperrt, weil sie komplizierte Formeln enthalten, die nicht überschrieben werden dürfen. Diese Formeln beziehen ihre Variablen aber nur aus der jeweiligen Zeile der Tabelle. Der Blattschutz ist mit Kennwort belegt.

    Nun habe ich nicht bedacht, dass jemand auf die Idee kommen könnte, in einer freigegebenen Spalte Zellen auszuschneiden und diese an anderer Stelle der selben Spalte wieder einzufügen. Excel versucht dann, die Zellbezüge anzupassen. Das will ich aber nicht. Daran ändert auch die Verwendung von absoluten Bezügen nichts.

    Ich habe nun alle Zellbezüge durch zusammengesetzte Indirekt-Bezüge ersetzt. Z.B. für die Spalte A der selben Zeile: INDIREKT(A&ZEILE()). Das funktioniert, macht allerdings die Formeln für mich äußerst unübersichtlich. Habt ihr eine andere Lösung?
     
  2. Ola,

    bist du vom Schlauch runter?
     
  3. Hallo PCDjoe,

    der Schlauch ist mittlerweile platt. Nein, ich bin keinen Schritt weiter.
    Ich habe versucht, eine VBA-Funktion zu schreiben, der man die Offsets der auszulesenden Zelle übergibt. Diese Funktion wollte ich dann vom Arbeitsblatt aus aufrufen. Z.B. =R(1,0) soll mir den Wert rechts von der Zelle, in der ich die Funktion benutze, zurückgeben.
    Das Problem dabei ist, dass ich innerhalb der VBA-Funktion nicht feststellen kann, von welcher Zelle aus der Aufruf erfolgte um so die relative Adressierung hinzukriegen (ActiveCell.... funktioniert hier nicht, weil sich das auf den Cursor bezieht).
    Ich könnte die aktive Zelle natürlich mit an die Funktion übergeben, das wird dann aber wieder so eine ZEILE()...SPALTE()-Mischung, die will ich ja gerade vermeiden, meine Formeln sind so schon lang genug. So dreht man sich im Kreis...

    Ein anderer Ansatz wäre, das Ausschneiden irgendwie zu blockieren. Geht in die Richtung irgendwas?
     
  4. Hallo,

    was ganz gut unter WorksheetSelectionChange geht:

    Code:
    Dim Zeile as Long, Spalte as Byte
    Zeile = Target.Row
    Spalte = Trage.Column
    
    Allerdings könntest du alles Schützen und Einträge nur über eine UserForm
    (Steuerung vielleicht ebenfalls über SelectionChange) steuern. Somit kannst
    du im Code den Schutz deaktivieren, ändern und wieder schützen.

    Oder aber du nimmst alle Formeln raus und berechnest die Zellen nur via VBA
    (Vielleicht über einen CommandButton oder einen Menüpunkt in der Menü-
    leiste). Spart ausserdem Unmengen Speicher. Stichwort Worksheetfunction -
    hat mir schon große Dienste geleistet. Oder du berechnest mit den Zellbezügen.
     
Die Seite wird geladen...

Excel 2003: Problem mit Zellbezügen - Ähnliche Themen

Forum Datum
Excel 2003 - Kleines Problem mit einer Formel Microsoft Office Suite 25. Juni 2014
Office 2003 und 2010 Paralellinstallatin, mehrer xls-Dateien Excel 2003 zuweisen Windows XP Forum 13. Juli 2012
2 Spalten in Excel 2003 fixieren Microsoft Office Suite 28. Mai 2012
MS Excel 2003 ganze Zeilen löschen Microsoft Office Suite 1. Okt. 2011
Verlinkung nach Umstieg Excel 2003 auf 2007 Microsoft Office Suite 23. Mai 2011