alle daten mit der eckigen klammer müßten in spalte a stehen. die daten mit variante in spalte b usw. Ich bekomme zwar die txt. datei in excel aber leider nur untereinander. Vielen dank für eure hilfe
"... die daten mit variante in spalte b usw..." = echt jetzt?
Bitte was sollen wir an "usw" verstehen?! Sollen wir jetzt raten, in welche Spalten all die anderen Daten geschrieben werden sollen? Sollen wir jetzt raten, dass du vielleicht ja gar nicht alle Daten aus der TXT-Datei in Excel haben willst?
Sorry, aber du MUSST uns wohl bitte - genau - erklären, welche Daten sollen in welche Spalten und vllt welche Daten brauchst du gar nicht.
29.08.2024, 10:20 (Dieser Beitrag wurde zuletzt bearbeitet: 29.08.2024, 10:21 von BigJane.)
Woher bekommst du die Daten? Macht es nicht mehr Sinn zu schauen ob man die Daten nicht aus der Quelle schon als Tabelle bekommt?
Eine Formel zur Umwandlung in die Tabelle wäre relativ einfach, aber nur wenn die einzelnen Abschnitte gleich lang wären und das sind sie bei dir nun einmal nicht - dadurch wird es etwas komplexer
Sub M_snb() sn = Split(Replace(CreateObject("scripting.filesystemobject").opentextfile("G:\OF\sensorcodes.txt").readall, Chr(34), ""), "[") ReDim sp(UBound(sn), 14)
For j = 1 To UBound(sn) st = Split("[" & sn(j), vbCrLf) For jj = 0 To UBound(sp, 2) sp(j, jj) = st(jj) If InStr(sp(j, jj), "=") Then sp(j, jj) = Split(sp(j, jj), "=")(1) Next Next
Cells(1).Resize(UBound(sp), UBound(sp, 2) + 1) = sp End Sub
29.08.2024, 11:42 (Dieser Beitrag wurde zuletzt bearbeitet: 29.08.2024, 11:52 von BigJane.)
Hi, anbei eine Testversion mit ein paar Formeln. Wenn du die Ausgabefelder noch inhaltlich einkürzen willst (also z.B. Variante="radial" --> radial) dann müsstest du die Formeln noch mit einsprechenden Textfunktionen verschachteln. Beispiel für das Entfernen der Begriffe vor und mit dem =
Folgende(r) 1 Nutzer sagt Danke an BigJane für diesen Beitrag:1 Nutzer sagt Danke an BigJane für diesen Beitrag 28 • Halber
(29.08.2024, 10:20)BigJane schrieb: Woher bekommst du die Daten? Macht es nicht mehr Sinn zu schauen ob man die Daten nicht aus der Quelle schon als Tabelle bekommt?
Eine Formel zur Umwandlung in die Tabelle wäre relativ einfach, aber nur wenn die einzelnen Abschnitte gleich lang wären und das sind sie bei dir nun einmal nicht - dadurch wird es etwas komplexer
das ist normalerweise eine .ini datei. die wurde mal von hand erstellt als es noch weniger abwandlungen waren. die maschine brauch diese datei für gewisse einstellungen der einzelnen abwandlungen. aber so langsam verliert man den überblick. deswegen sollte sie in eine excel tabelle.
(29.08.2024, 11:11)snb schrieb:
Code:
Sub M_snb() sn = Split(Replace(CreateObject("scripting.filesystemobject").opentextfile("G:\OF\sensorcodes.txt").readall, Chr(34), ""), "[") ReDim sp(UBound(sn), 14)
For j = 1 To UBound(sn) st = Split("[" & sn(j), vbCrLf) For jj = 0 To UBound(sp, 2) sp(j, jj) = st(jj) If InStr(sp(j, jj), "=") Then sp(j, jj) = Split(sp(j, jj), "=")(1) Next Next
Cells(1).Resize(UBound(sp), UBound(sp, 2) + 1) = sp End Sub
Danke. Hut ab das das so schnell gelöst wurde. Funktioniert wunderbar. Eine frage hätte ich noch. geht das auch noch in die andere richtung? also wieder aus der tabelle heraus mit der struktur in eine txt.datei
29.08.2024, 12:24 (Dieser Beitrag wurde zuletzt bearbeitet: 29.08.2024, 12:27 von snb.)
.SaveAs csv-Datei ?
Oder vielleicht so ?
Code:
Sub M_snb() Sheet1.UsedRange.Copy
With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .GetFromClipboard CreateObject("scripting.filesystemobject").createtextfile("G:\OF\sensorcodes_001.txt").write .GetText End With End Sub