[Gelöst] Excel Lösung gesucht

goegolo

Member
Themenstarter
Registriert
11 Aug. 2005
Beiträge
304
Hallo Forum,

ein Bekannter fragte mich bezüglich eines Spreadsheet Problems, bei dem ich nicht weiter komme. Er möchte den Inhalt einer Datei (Beispiel: a1 b1 c1a2 b2 c2a3 b3 c3) in Excel importieren und zeilenweise formatieren (jede Zeile ein Feld):

a1 b1 c1
a2 b2 c2
a3 b3 c3

Weiß jemand einen Rat um dieses Problem zu lösen?

Edit: Filmaker, funktioniert der eventuell?!
 
RE: Excel Lösung gesucht

Die Beschreibung ist zu ungenau, als dass man nachvollziehen könnte, was du exakt tun möchtest. Allgemein gibt es über Excel eine Importfunktion, individuelle Formatierungswünsche oder Aufteilungswünsche der Daten auf bestimmte Zellen, ließe sich wohl über VBA verwirklichen.
 
Das Problem besteht nach meinem Verständnis darin, dass die Daten nicht durch Leerzeichen, Kommata oder Semikolons getrennt sind sondern als eine Reihe vorliegen. Eine Option wäre die Auszählung der Stellen, z.B. eine Trennung oder ein Absatz nach jeweils drei Stellen.

Was ist VBA?
 
Auf jeden Fall früher, vermutlich 2002...

Edit: Version 2003
 
Präzisierung: "Ich suche eigentlich eine Routine, die meine Datei einliest und jeweils nach 326 Stellen ein CRLF einfuegt."
 
naja ist im Prinzip kein unlösbares Problem, aber dafür sollte man in irgendeiner Programmiersprache Kenntnisse haben. Ich hab sowas ähnliches unter VBA für meine Access-DB mal geschrieben (zum Formatieren bzw. Einlesen einer CSV-Datei), aber das müßte dann individuell angepaßt werden. Würde dir aber empfehlen kein CLRF zu verwenden, sondern irgend einen anderen eindeutigen Marker (Semikolon, Komma oder ähnliches).
Hier mal nur ein VBA-Schnipsel um zumindest das Grobgerüst zu erstellen:


Open strCSVFile For Input As #1
Line Input #1, strKopfzeile 'Kopfzeile

If InStr(strKopfzeile, Chr$(10)) Then 'Konvertierung von chr$10 nach chr$13
strKopfzeile = Replace(strKopfzeile, Chr$(10), Chr$(13) & Chr$(10), 1)
strKopfzeile = Replace(strKopfzeile, Chr$(34), "", 1) 'Entfernen von Anführungszeichen

Close #1

Open strCSVFile For Output As #1
Print #1, strKopfzeile 'Schreibe die bereinigte Kopfzeile zurück
Close #1

Open strCSVFile For Input As #1
Line Input #1, strKopfzeile 'Setze Lineinput damit auf die 1. Datenzeile

End If

If Not EOF(1) Then
Line Input #1, strDatenzeile 'Teststring um die Datenart zu ermitteln
strDatenzeile = Replace(strDatenzeile, Chr$(34), "", 1)
arrStatistic(1) = 0 'Erste Datenzeile
Else
MsgBox ("Die Datei ist beschädigt oder ist leer!")
Exit Sub
End If
 
Programm

wenn du möchtest, kann ich dir ein kleines einfaches C-Programm schreiben, dass dir deine Datei formatiert.
 
RE: Excel Lösung gesucht

Original von goegolo
Er möchte den Inhalt einer Datei (Beispiel: a1 b1 c1a2 b2 c2a3 b3 c3) in Excel importieren und zeilenweise formatieren (jede Zeile ein Feld):

a1 b1 c1
a2 b2 c2
a3 b3 c3

Weiß jemand einen Rat um dieses Problem zu lösen?
Hier im Beispiel sind ja nur die Exceladressen angegeben.
Aber in der Datei stehen ja nur Zahlen mit und ohne Komma und wenn da noch nicht mal ein Leerzeichen die Zahlen trennt weiß ich nicht wie man die mit einer Routine trennen soll. Du solltest einen LINK zu der Datei geben. Dann können User die Dir helfen möchten an dem "Material" entwickel und testen.

Theoretisch kommt man da nicht weiter.

sorry
 
RE: Excel Lösung gesucht

so wie ich ihn verstanden habe, geht es erstmal nur darum eine Txt Datei zu formatieren und halt nach einer bestimmten Anzahl von Zeichen ein zusätzliches einzufügen. Mit Excel hat das dann im ersten Schritt gar nichts zu tun.
 
Vielen herzlichen Dank an fruitcruiser für ein kleines C++ Programm und an CombatEgg für die PhP Variante !!!

Beide Varianten funktionieren, erstere lokal, die zweite online. :] :] :]
 
RE: php

Original von fruitcruiser
würde interessehalber mal gern die php-Variante sehen :-)
http: // myhome.i24.cc / crlf.php (Aufgrund des seeehr hohen Spam-Aufkommens getrennt)
Nichts besonderes, erfüllt halt nur seinen Zweck
 
RE: php

ehm, nach kurzem Blick daruaf, läßt sich aber keine DAtei einlesen oder ? bzw. keine Ausgabe in einer Datei nach der Formatierung ??
 
Ich bin Minimalist :)

Habs halt so verstanden, dass ne Zeichenkette immer nach 326 Zeichen ein CRLF erhalten sollte. Das Hinein- und Herauskopieren ist sicher das kleinste Übel.
Wäre aber mit Dateien genauso wenig problematisch geworden, bloß dann wäre ich nicht mit 16 Zeilen Code hingekommen :D
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben