[EXCEL] Zuweisung von anderen Tabellen/Datei beibehalten

erci74

Cadet 1st Year
Dabei seit
Jan. 2017
Beiträge
13
Hallo,

ich habe zwei Dateien. Und für einige Zeilen habe ich Zuweisungen von anderen Dateien (Zellen) für bestimmte Zellen.
In dieser Form zum bsp.: =[test.xlsm]BA!$K4

Ich frage mich ob es eine Möglichkeit gibt trotz der Zuweisung für die Zelle durch die andere Datei, auch Manuell Einträge gemacht werden können in der Zelle. Aber falls in der anderen Tabelle wiederum Einträge geamcht werden sollte diese Funktion Vorrang haben (=[test.xlsm]BA!$K4).

Also Vorrang für =[test.xlsm]BA!$K4 aber wenn man manuell einen Eintrag macht sollte die Funktion nicht gelöscht werden sondern beibehalten werden und bei Eintrag in K4 in der anderen Datei soll K4 wieder in die Zelle übertragen werden.

Vielen Dank im voraus.
 

Nitschi66

Kreisklassenmeister
Dabei seit
Nov. 2007
Beiträge
8.490
Nein, du kannst in einer Zelle keinen Verweis auf die eigene Zelle machen, und das wäre dafür nötig.
es müsste ja so in der art aussehen:
A1=WENN([test.xlsm]BA!$K4-Datum->A1-Datum;[test.xlsm]BA!$K4;A1)

Aber auch so kaum möglich da die zellen keine Daten der Zeit oder ähnliches enthalten soweit ich weiß. Excel weiß nicht wie alt der Eintrag in einer Zelle ist.
 

CHaos.Gentle

Lt. Commander
Dabei seit
Juni 2004
Beiträge
1.526
Ohne VBA nur mit Zwischenspalte:
wenn(istleer([test.xlsm]BA!$K4);$zwischenspalte;[test.xlsm]BA!$K4)

Mit VBA ganz wie gewünscht, sogar incl. aktuellstem Eintrag, die Zeit des letzten Eintrags kann man sich ja auf einem weiteren Datenblatt speichern.
 

CHaos.Gentle

Lt. Commander
Dabei seit
Juni 2004
Beiträge
1.526
[...]Aber falls in der anderen Tabelle wiederum Einträge geamcht werden sollte diese Funktion Vorrang haben (=[test.xlsm]BA!$K4).[...]
Lässt sich eindeutig auch anders interpretieren, aber wenn du die Gedanken vom TE lesen kannst...dann halt ein ganz einfacher VBA Trigger in beide Sheets:

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Column = 3 And Target.Value <> "" Then
Cells(Target.Row, Target.Column + 3).Value = Time
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub

und in die Zelle:
wenn(zelle(x,y) > zelle(a,b)) dann blah sonst blubb < hier der Bezug auf die Time-Spalte
 
Top