VBA - Wert in einer bestimmten Position ändern
Hallo zusammen,
kenn mich leider noch nicht gut in VBS aus. Hoffe das mir jemand von euch weiterhelfen kann.
Ich hab eine Datei (test.txt). In dieser Datei sind viel Zeilen. Nun möchte ich gerne, dass ein bestimmter Wert an einer bestimmten Position ersetzt wird. Also z.B. sollte eine 1 anstatt dem vorhanden Wert in der Position 71 eingetragen werden und das natürlich in allen Zeilen!
Hoffe ich konnte das verständlich rüber bringen...
Vorab vielen Dank!
kenn mich leider noch nicht gut in VBS aus. Hoffe das mir jemand von euch weiterhelfen kann.
Ich hab eine Datei (test.txt). In dieser Datei sind viel Zeilen. Nun möchte ich gerne, dass ein bestimmter Wert an einer bestimmten Position ersetzt wird. Also z.B. sollte eine 1 anstatt dem vorhanden Wert in der Position 71 eingetragen werden und das natürlich in allen Zeilen!
Hoffe ich konnte das verständlich rüber bringen...
Vorab vielen Dank!
Please also mark the comments that contributed to the solution of the article
Content-Key: 92363
Url: https://administrator.de/contentid/92363
Printed on: April 25, 2024 at 17:04 o'clock
2 Comments
Latest comment
Hallo ReEppa und willkommen im Forum!
Etwa so:
Die Ersetzung erfolgt "in" der Originaldatei (genauer: diese wird mit dem geänderten Inhalt neu erstellt).
Grüße
bastla
P.S.: In VBA ließe sich die Zeile 9 reduzieren auf:
Etwa so:
Position = 71
Ersatztext = "1"
Datei = "D:\test.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
T = Split(fso.OpenTextFile(Datei).ReadAll, vbCrLF)
For i = 0 To UBound(T)
If Len(T(i)) >= Position Then
T(i) = Left(T(i), Position - 1) & Ersatztext & Mid(T(i), Position + 1)
End If
Next
fso.CreateTextFile(Datei, True).Write Join(T, vbCrLF)
Grüße
bastla
P.S.: In VBA ließe sich die Zeile 9 reduzieren auf:
Mid(T(i), Position, 1) = Ersatztext