Sto cercando di utilizzare i metodi FileSystemObject per trovare una riga specifica in un file di testo e all'interno di tale riga sostituire una stringa specifica. Sono relativamente nuovo a questo, come il mio codice attuale ha eccellere aprire il file di testo e sostituire quello che mi serve per sostituire, quindi salvarlo e chiuderlo. In questo modo non è più un'opzione, poiché avendo Excel aperto il file di testo impiega troppo tempo e mantiene il file.Come sostituire una stringa in una riga di un file di testo utilizzando FileSystemObject in VBA?
Questo è quanto sono arrivato così lontano.
-
Sub FindLines()
Const ForReading = 1
Set FSO = CreateObject("Scripting.FileSystemObject")
Set objFSO = FSO.OpenTextFile("C:\Users\Carella Home\Desktop\boomboom.txt", ForReading, False)
Do Until objFSO.AtEndOfStream = True
go = objFSO.ReadLine
If InStr(1, go, "ant", vbTextCompare) > 0 Then
bo = Replace(go, "t", "wow")
End If
Loop
objFSO.Close
Set objFSO = FSO.OpenTextFile("C:\Users\Carella Home\Desktop\boomboom.txt", 2)
End Sub
-
Il meglio che posso fare è aprire il file fino a scrivere, ma non ho idea di come trovare la linea e sostituirlo con la linea che ho bisogno di sostituirlo con.
Per favore fatemi sapere se, nel caso in cui siete disposti ad aiutarmi/guidarmi nella direzione corretta, avete bisogno di maggiori informazioni. Ho cercato molto e ho visto persone suggerire altri modi per farlo. Ho bisogno di imparare come modificare le righe in questo modo. Qualcuno può aiutarmi?
Grazie in anticipo!
-Anthony C.
Per curiosità, perché Excel e non parola o qualche altro lettore di testo? –
Stavo usando Excel perché è quello che mi è stato insegnato originariamente. Il codice VBA si trova in un file utilizzato da molti utenti, quindi dopo aver letto/scritto 10 di queste applicazioni nello stesso file aprendo/chiudendo Excel era troppo e causando troppi errori. Ho bisogno di qualcosa di più veloce dell'apertura e chiusura del file. – aCarella