Clever-Excel-Forum

Normale Version: #BEZUG bei "aktualisieren"
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hey ho,

ich habe eine recht verschachtelte Exceldatei mit einem stumpfen Fehler:

Im Blatt 2 lese ich eine Text-Datei (*-dat) ein.
In Blatt 1 lese ich im wesentlichen 3 Spalten aus Blatt 2 ein (die z.T. gleich durcheinander geteilt werden) und rechne dann mit diesen Werten weiter.

Wenn ich nun über "alle aktualisieren" eine neue Datei einlese (die genauso aufgebaut ist wie die erste, aber u.U. mehr oder weniger Zeilen hat), bekomme ich in Blatt 1 einen Fehler (#Bezug!").
Wenn ich in Blatt 1 die "Zellen manuell nach unten ziehe" ist wieder alles gut...

Da die einzulesenden Dateien leider immer verschieden lang sind, habe ich die Tabelle in Blatt 1 so lang gemacht, dass sie auf jeden Fall größer ist als die Daten in Blatt 2. Leere (überzählige) Zellen werden dann einfach mit #NV aufgefüllt.

Gibt es einen Trick, wie ich dieses "#Bezug" los werde? Jedes mal die Tabelle "nachziehen" nervt und das "#Bezug" zerschießt mit die Datenauftragung im Diagramm... :s


Ich hoffe, mein Problem ist verständlich?!


Schon einmal herzlichen Dank,
karatebietz
(02.03.2017, 15:18)karatebietz schrieb: [ -> ]Ich hoffe, mein Problem ist verständlich?!

Nö, für mich nicht. Ohne Beispieldateien ist das schwierig.
Hallo karatebiez,

wie liest du denn die Textdatei ein?

Die Fehlermeldung "#Bezug" erscheint, wenn die Zellen, aus der die Daten gesucht werden, nicht mehr vorhanden ist.
In deinem Fall wenn Zellen im Blatt2 gelöscht werden.

Du solltest beim Einlesen darauf achten, dass die Zellen aus dem letzten Lesevorgang nicht gelöscht, sondern nur überschrieben werden.
Hallo ihr zwei,

erstmal Danke für eure Antworten.

Wie kann ich denn überschreiben und nicht löschen beim Dateneinlesen?


Ich habe mal ein Minimalbeispiel beigefügt.
Mein Problem ist: Ich lese "Datensatz_kurz.txt" ein und errechne Daten in "Rechnung" daraus. Da ich nicht genau weiß wie viele Zeilen in "Datensatz_kurz.txt" stehen, ist die Tabelle in "Rechnung" länger und wird mit #NV aufgefüllt.
Nun lese ich "Datensatz_lang.txt" über "alle aktualisieren" ein. Dabei "klaut" mir Excel aber Werte. Es werden nicht alle Zeilen aus "Daten" in "Rechnung" eingelesen...

Umgekehrt: Wenn ich erst "Datensatz_lang.txt" einlese und dann auf "Datensatz_kurz.txt" aktualisiere, steht plötz "#Bezug!" in "Rechnung"...

Kann ich etwa nur Daten einlesen, die immer gleich lang sind???



Dankeschön und viele Grüße,
Christian
Hallo Christian

Die Frage von Ego ("Wie liest du denn die Textdatei ein?") hast du noch nicht beantwortet.
Hi,

ah Sorry.
Beim ersten Mal: Daten --> Aus Text (und dann einfach die Textdatei auswählen)
Danach: Daten --> Aktualisieren (und dabei die neue Datei auswählen)

Gibt es noch einen anderen Weg? Huh

Viele Grüße,
Christian
(03.03.2017, 08:32)karatebietz schrieb: [ -> ]Beim ersten Mal: Daten --> Aus Text (und dann einfach die Textdatei auswählen)
Du meinst Daten -> Externe Daten abrufen -> aus Text.
Wenn die Datei ausgewählt wurde kommt als nächstes der Textkonvertierungs-Assistent. Hast du da etwas an den Einstellungen geändert?
Danach kommt ein Dialog "Daten importieren". Welche Einstellungen hast du da vorgenommen?
Hey shift-del,

Ja genau. In der Rubrik "Externe Daten abrufen" wähle ich "Aus Text" (Steht bei mir direkt da - deswegen hatte ich den Unterpunkt übersehen)

Dann wähle ich die Datei aus und ändere eigentlich nichts im Textkonvertierungs-Assistenten.
Heißt:
1. "Ursprünglicher Datentyp" - getrennt und Import beginnt mit Zeile 1 (Dateiursprung ist irgendwie "932 - Japanisch" gewählt, aber das hab ich einfach so gelassen. Sieht ja gut aus danach)
2.  Trennzeichen: Tabstopp. Alles andere ist abgewählt
3. Datenformat der Spalten: Standard

Dann "Fertig stellen".

Im nächsten Fenster hab ich auch die Voreinstellungen gelassen, heißt:
- Format, in dem die Daten in der Arbeitsmappe angezeigt werden sollen: "Tabelle" (kann ich auch nicht ändern)
- Wo sollen die Daten eingefügt werden? --> Bestehendes Arbeitsblatt (=$A$1)
- Unter Eigenschaften habe ich keine Änderungen vorgenommen. Ausgewählt ist hier "Zellen für neue Daten einfügen, nicht verwendete Zellen löschen". [Ist hier "Bestehende Zellinhalte überschreiben vielleicht besser"? - was wäre der Unterschied?]


Schon mal besten Dank für die total schnellen Rückmeldungen!
Christian
POTZBLITZ - der geht! :18:

mit "Bestehende Zellinhalte überschreiben" klappt es! Jetzt verstehe ich auch die Nachfrage von Ego :s
War mir nicht klar, dass das einen Unterschied macht... :16: 

Warum denn?


Vielleicht darf ich ncoh eine Frage nachschieben? Kann ich (ohne VBA) auch den Dateinamen der eingelesenen Daten in irgendeiner Zelle vermerken?


Tausend Dank!
Christian
Bei deiner Excel-Version würde ich auf die moderne Variante umschwenken:
Daten -> Abrufen und transformieren -> Aus Datei -> Aus Text
Und schon bist du im Query Editor.
Seiten: 1 2