Office - Word, Excel und Co. 9.747 Themen, 41.434 Beiträge

Link to list_end Excel (2000/2002)

ainstein / 4 Antworten / Flachansicht Nickles

mit einem macro kann ich daten von einem sheet in eine liste so einfügen, dass sie immer ans ende gestellt werden, die liste also nach unten verlängert wird. das geht in dem bei dieser aktion zellen eingefügt werden und eine named range cell nach unten verschoben wird.

wegen anderen formeln möchte ich dieses sheet in Excel schützen und habe deshalb das blatt mit der macro-aktion in ein weiteres gestellt - weil zum zellen verschieben das blatt nicht geschützt sein darf/kann.

nun habe ich aber das problem: wie verknüpfe ich zellen auf dem display blatt mit den zellen in dem list-end blatt? Ich habe schon absolut und relative verknüpfung versucht. Auch named cell würde nix bringen, weil das ist ja der effect mit dem das einfügen von zellen eine verlängerung der liste ermöglicht.

z.B.: sheetA = display sheet; sheetB = list_end sheet; [] = zelle

in sheetA:
[A1]=[sheetB!A1]
[B1]=[sheetB!B1]
[A2]=[sheetB!A2]
[B2]=[sheetB!B2]
[A3]=[sheetB!A3]
[B3]=[sheetB!B3]

in sheetB [A2] = named as "list_end"

bei betätigen des macros wird in sheetB [A2] nach unten verschoben und somit zu [A3]. die darüber eingefügten zellen werden mit den entsprechenden daten für die liste gefüllt. das bedeutet aber, dass die alten zellen [A2] & [B2] zu [A3] & [B3] werden (in sheetB) und die verknüpfungen in sheetA entsprechend updated, werden zu:

in sheetA:
[A1]=[sheetB!A1]
[B1]=[sheetB!B1] => zeile 1, wie vorher
[A2]=[sheetB!A3]
[B2]=[sheetB!B3] => zeile 2, mit updated zell referenzen
[A3]=[sheetB!A4]
[B3]=[sheetB!B4] => zeile 3, wie zeile 2, nachedm nach unten verschoben (in sheetB)

ich möchte aber, dass die zell referenzen in sheetA nicht updated werden, somit wie in der ersten sequenz bleiben.
das ganze "beschränkt" sich auf eine tabelle 11x3, e.g A1:C11, im display-sheet, weil im list_end sheet wirde die tabelle ja länger...

wenn irgend jemand eine idee dazu hat wäre ich äußerst dankbar. Ich würde ja auch \'nen ganzen satz wenn-dann regeln rein setzen, wenn\'s was bringt.

Ich habe eine beispiel datei zusammengestellt; wenn jemand sich dran "spielen" möchte, dann kann ich das ding emailen (12k als zip).

Vielen Dank im Voraus.

\"Eine Sache ist nur verloren, wenn man sie aufgibt.\" (Freiherr von Stein)
bei Antwort benachrichtigen
ainstein Nachtrag zu: „Link to list_end Excel (2000/2002)“
Optionen

thanks for that info!

habe mich in mehreren ecken um hilfe umgesehen...
Ein freund hier hat mir auf die sprünge geholfen:
a) in einem vorschlag hat er auch den Schutz aufgehoben und hinterher wieder angewandt
b) in der zweiten version hat er mir das macro so umgesetzt, dass es funzt, so wie ich's mir vorgestellt habe:

- zeilen copiert und an entsprechender stelle (list_end) eingesetzt
- "list_end" name geslöscht,
- position nach unten verschoben
- "list_end" name wieder erstellt

sieht dann so aus - sorry alles english, weil da leb ich halt:

Sub
'(...)
Application.Goto Reference:="tempFees"
Application.CutCopyMode = False
Selection.Copy
Application.Goto Reference:="list_end"
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
ActiveWorkbook.Names("list_end").Delete
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveWorkbook.Names.Add Name:="list_end", ReferstoR1C1:=ActiveCell
Application.CutCopyMode = False
Application.Goto Reference:="tempFees"
Selection.ClearContents
Application.Goto Reference:="LearnerFin"
End Sub

und damit sind die verknüpfungen im display-blatt nicht beeinflusst

vielen dank nochmal

ainstein

\"Eine Sache ist nur verloren, wenn man sie aufgibt.\" (Freiherr von Stein)
bei Antwort benachrichtigen