Excel / Automatischer Datenimport

Gast #444820
Habe einige txt Dateien diese würde ich gerne automatisch mit Excel 
auswerten. Allerdings variiert die Größe. Außerdem falls möglich möchte 
ich die txt Datei einfach auf mein Excel projekt ziehen können, dann 
soll alles automatisch laufen.

Sieht da jemmand den Schimmer einer Chance ?

Danke !
Gast
was enthält denn diese txt-datei? irgendwelche werte, die sich halbwegs 
vernünftig in eine tabelle eintragen lassen?
dann könntest du mit dem CSV (comma separated values) -> 
http://en.wikipedia.org/wiki/Comma-separated_values arbeiten...du mußt 
eben nur beachten, dass die werte, die in einer neuen SPALTE stehen 
sollen durch ein komma getrennt sind, eine neue ZEILE im excel sheet 
wird durch ein CRLF (enter) angezeigt...das funktioniert in der regel 
ganz gut...
Gast
edit: ach ja, achte dabei auf die besonderheit mit " (hochkomma, 
anführungsstriche, wie auch immer du es nennen willst), bei wiki ist's 
aber auch nochmal erklärt...
Gast
also bei dir sind zwei werte jeweils durch ein ; getrennt ? wenn ich das 
richtig verstehe ? dann ersetz durch die replace-funktion des 
texteditors als ; durch ein , (komma)
den letzten spalten eintrag erkennt er durch das enter (cr/lf) am ende 
deiner zeile ... stehen nur zwei werte in einer zeile gibts auch nur 
zwei spalten - fertig :-)
oder habe ich deine frage falsch verstanden?
Gast
;-)

Ja fast , also ich habe ein Textdatei mit ca 1000 Zeilen. Jeder Zeile 
enthält 2 Werte.

Leider variiert die Zeilenanzahl aber ich möchte gerne trotzdem ohne 
mühsames bearbeiten diese Daten auswerten.

d.h wie mache ich Excel klar das bei Dateien unterschiedlicher größe 
immer gewisse Rechnungen durchgeführt werden ?


CRLF habe ich leider noch nie gehört ??? :-(
Gast
CR/LF sind im grunde nur die steuerzeichen für ein enter (den cursor 
wirder an den anfang setzen und eine neue zeile - mal grob gesprochen) - 
aso wenn deine zeile mit nem enter endet, ist alles gut ;-)
excel ist egal wie lang die datei ist...sinds zwei zeilen gibts eben nur 
zwei spalten mit zwei zeilen, sind tausend zeilen gibts im execl sheet 
eben 1000 zeilen...
hauptsache du benennst deine txt-datei in eine csv-datei um und trennst 
deine zwei werte pro zeile mit einem komma....dann brauchst du die nur 
noch zu öffnen in excel/oder importieren (musste mal gucken) und das 
war's
Gast
ach so, zum thema berechnung...
ich bin nicht so der excel-profi, aber wenn du ne summe o.ä haben willst 
einer spalte oder zeile, dann geht das ja unabhängig davon wieviele 
werte du im sheet hast....ist dann nur ne frage wie und wo man die 
formel im sheet anordnet...
Gast
Also,

imprinzip den Mittelwert über 20 Werte also über 20 Zeilen.



@unsichtbarer WM-Rahul

Ja aber markros sehen ja nicht die letzte Zeile sondern nur die Zeile 
die ich angeklickt habe.
Gast
Das problem ist so gesehen nicht die Rechnung sondern Excel klar zu 
machen das über eine variable Zeilenanzahl werte ausgerechnet werden 
sollen. Und dann nicht die ganze spalte sondern es sollen immer nur 20 
werte ausgerechnet werden. Und dann die nächsten 20
Gast
entweder vbScript (ich weiß nicht wie komplex die formeln da werden 
dürfen) oder du ordnest deine daten einfach anders an, dass immer blöcke 
von 20 wertepaaren verarbeitet werden...also zb anstatt 20 zeilen machst 
du dann eben zwanzig spalten und machst über diese spalte den 
mittelwert...und dann für die nächsten 20 werte (stehen in zeile 2) usw 
...
naja, geht sicher auch leichter wenn man sich mit excel eingehender 
beschäftigt...
Gast
>Ja aber markros sehen ja nicht die letzte Zeile sondern nur die Zeile
>die ich angeklickt habe.

Komisch, bei mir funktioniert das auch mit mehreren Blättern und 
Arbeitsmappen.
Vielleicht solltest du mal einen Blick auf VBA-Seiten werfen 
(activevb.de oder so).
Gast
Also in Macros von Excel kannst du mit

Range("A6").Value

jede Zelle ansprechen - musst halt das A6 durch die Zellenadresse 
ersetzen.

Du kannst ja auch eine Schleife bauen, die als Ersten Schritt die Zeilen 
nacheinander abklappert und schaut, ob noch ein Wert in Spalte A steht, 
wenn nicht ist n-1 dein letzter Wert.

Ich hab mal sowas gemacht - waren aber ca. 4000 Datensätze.
Mein ganzes Macro is gerade mal 8 Sekunden glaufen (incl. Berechnungen)

Du könntest ja auch in die Zeilen 20, 40, 60,... Spalte C einfach eine 
Formel eintragen

Range("C20").FormulaR1C1 = "xxxxx"

Wenn du mehr Info drüber suchst, fang mal mit der VBA-Hilfe (F1) an.

Du kannst jedoch auch einmal ein Makro aufzeichnen wo du die Formel 
eingibst und dann im VBA-Editor analysieren und die relevanten Teile 
weierverwenden, wenn du dir über die genaue Syntax-Anwendung nicht ganz 
im klaren bist!

aja, in den VBA-Editor kommst du mit Alt+F11

Ich hoff, ich konnt dir etwas weiterhelfen

LG

Markus

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.