|
Excel : Text Datei bearbeiten
G. Dawg am 08.11.2007 um 16:18 Uhr (0)
Guten Tag zusammen!Ich habe nun den Beitrag http://ww3.cad.de/foren/ubb/Forum226/HTML/000528.shtml und diesen http://ww3.cad.de/foren/ubb/Forum226/HTML/000808.shtml gelesen und versucht zu verstehen.Bahnhof.Mein Problem ist, dass ich diverse Suchbegriffe habe wie "Nodes", "Quad" usw und diese Zeilen löschen will.Oder noch besser: Alles was nach "Quad" ist gleich weglöschen.Die einzelnen Zeile filtern von 0 123.456 78.9011 323.456 178.901..38875 38.328 59.333auf123.456 78.901323.456 178.901..38.328 59.333so ...
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 08.11.2007 um 17:09 Uhr (0)
tunnelbauer, danke für die rasche Antwort.Doch genau mit dem Import-Dingsda habe ich es bisher gemacht. Doch es werden noch ganz, ganz viele Dateien auf mich zukommen! :-Nun wollte ich das Ganze automatisieren.Angehängt ist nun so eine Datei (output.txt) und wie sie aussehen sollte (real_output.txt).Ich brauche nur den ersten Abschnitt dieser Datei. Sprinch, bis zum Abschitt Quad. Dann muss ich nur den ersten Teil neu formatieren. Achja, die erste Zeile muss auch weg.Die Formatierung:Da sind immer 3 Zahlen ...
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 08.11.2007 um 17:44 Uhr (0)
Hallo Axel! Unglaublich! Da hat sich was getan mit dem MacroRecorder seit Excel 97 (habe jetzt Excel 2007)! Das ist ja scho fast brauchbar! Jetzt nur noch mit den Makros von den anderen Beiträge mischen und fertig!Den MakroRecorder hätte ich nie im Leben versucht! Vielen Dank für den Tipp!Ich werde mich mit dem fertigen Makro melden, wenn es wirklich zu 100% funktioniert!Hoffentlich bis bald einmal! Gruss,Gilbert.------------------
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 08.11.2007 um 18:09 Uhr (0)
Mist... per Import, fügt Excel alles in Spalte A ein! Und jedesmal die Datei von "Hand" importieren macht auch kein Spass. Werde dem Excel-API schon noch auf die Schliche kommen. Note to myself: Sonst versuche ich es direkt mit der SWX-API, wenn es wirklich nicht anders geht. Da gibts schon das Gen3DCloud. Vielleich lässt sich dort was manupulieren?!------------------
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 07:24 Uhr (0)
Zitat:Original erstellt von Thomas Harmening:Code:Set textfile = fso.OpenTextFile("h: mpinput.txt", ForReading) Das Dateiobjekt wird auf die Datei gesetztDanke, Thomas Harmening!Das sieht schon mal vielversprechend aus.Jetzt aber: ich musste das Objekt "OpenTextFile" anders definieren: Code:Set textfile = fso.OpenTextFile("h: mpinput.txt", 1,0) Das Dateiobjekt wird auf die Datei gesetzt[nochmals versuchen.... unnötige-lange-quitschende-musik-um-künstliche-nervende-spannung-zu-erzeugen]Aaaah!!! Jetzt aber ...
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 08:48 Uhr (0)
bst, was ist da der Vorteil gegenüber dem Script von Thomas? Ich denke, dass da ein Vorteil ist, sonst hättest Du das nicht beigetragen.Ich werde es auf jeden Fall mal versuchen und auch einen Geschwindigkeitsvergleich machen.EDIT:Ok, sieht gut aus aber es filtert die erste Zahlengruppe nicht raus. ------------------ [Diese Nachricht wurde von G. Dawg am 09. Nov. 2007 editiert.]
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 11:21 Uhr (0)
bst, der genau Inhalt ist in den Daten die ich hochgeladen habe:Code:Nodes 0 33.36039 10.46330 1 33.36039 10.93934 3 33.36039 10.73939 3 33.36039 10.93991 4 33.36039 11.99993 9 33.36039 11.33999 6 33.36039 11.93997 7 33.36039 11.73993 3 33.36039 11.93999 139 33.36039 99.19000 33410 33.36039 99.39790 Leider beginnt (fast) jede Zeile mit mehr als einem Leerzeichen und da steht es bei mir an! :( Code:outtext = Mid$(test(i), 16, 99)ei ...
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 11:37 Uhr (0)
Ich habe es so versuchtCode: strOneLine = " 6 33.36039 11.93997 "strOneLine = Mid$(strOneLine, 12, 99) einfaches trimmendebug.print strOneLine " 33.36039 11.93997 "Do Dim vDummy vDummy = InStr(strOneLine, " ") strOneLine = Right(strOneLine, Len(strOneLine) - vDummy) debug.print strOneLine ***Loop While vDummy 0meine Zeile von den übrig bleibenden vorab-Leerzeichen zu befreien. Es löschte mir die ganze Zeile! *** debug.print ( "_" als Leerzeichen für die Formatierung):____33.36039 11.93997 ___3 ...
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 12:00 Uhr (0)
Leider weiss ich nie genau, wieviele Leerzeichen es wirklich sind.Das kommt ganz auf die Geometrie des Teiles an.... leider!!! Was ich weiss:[xLeerzeichen] [Zahlen die ich nicht brauche] [xLeerzeichen] [Zahlen die ich brauche] [xLeerzeichen] [Zahlen die ich brauche] und später einmal, kommt noch eine dritte (bzw. vierte) Spalte mit Zahlen, die ich brauche .... btw: es schneit!!!! ------------------
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 12:35 Uhr (0)
Zitat:Original erstellt von bst:Ist Dir mit sowas gedient?Ersetzt an jedem Zeilenanfang Leerzeichen + Ziffern + Leerzeichen durch nichts, via:re.Pattern = "^s+d+s+"^ Anfang der Zeiles+ beliebig viele Leerzeichend+ beliebig viele Zifferns+ beliebig viele LeerzeichenDas glaub ich ja nicht! Ich hatte keine Ahnung das VB auch RegEx kann (ich kenn das nur von PHP)!!! Ist ja geil!!*gutesbierzuschiebundaufswochenendetrinken* Ich werde das nach dem Mittagessen gleich ausprobieren!!! Kann es kaum erwarten.... @ ...
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 13:35 Uhr (0)
Zitat:Original erstellt von bst:Code:Print #intOutHandle, re.Replace(strOneLine, "")Hat bei mir nicht funktioniert. EDIT:So gehts:Code: strOneLine = re.Replace(strOneLine, "") Print #intOutHandle, strOneLine------------------ [Diese Nachricht wurde von G. Dawg am 09. Nov. 2007 editiert.]
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 14:04 Uhr (0)
Er hat einfach nichts in die Datei geschrieben?!? Keine Ahnung!Hier ist, was ich bis jetzt habe!Es gibt noch ein paar kleine Anpassungen ist aber soweit sehr viel besser, als das was ich heute Morgen hatte!Code:Option Explicit declarations, used windows API calls and constants Deklarationen, benötigte Windows API-Calls und KonstantenPublic Enum swLengthUnit_e swMM = 0 swCM = 1 swMETER = 2 swINCHES = 3 swFEET = 4 swFEETINCHES = 5 swANGSTROM = 6 swNANOMETER = 7 swMICRON = 8 swMIL = 9 swUIN = 10End ...
|
| In das Form Excel wechseln |
|
Excel : Text Datei bearbeiten
G. Dawg am 09.11.2007 um 14:46 Uhr (0)
Das glaub ich ja nicht! Ich habe den Schnippsel aus einem Makro für SolidWorks, desshalb vermutlich! Muss ich gleich mal ausprobieren!Sieht ja 10000x einfacher aus!------------------
|
| In das Form Excel wechseln |