• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Txt Dosyasının İstenilen Satırına Bilgi Yazma

  • Konbuyu başlatan Konbuyu başlatan askm
  • Başlangıç tarihi Başlangıç tarihi

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,746
Excel Vers. ve Dili
2010-2016
Kolay gelsin.
Mevcut bulanan txt dosyasının örneğin 3. ve 5 satırındaki bilgileri değiştirmek istiyorum nasıl kod yazmak gerekli.Aşağıdaki şekilde denedim ama mevcut satırı siliyor.
Ben istiyorum ki 1. satırdaki veri dursun,2 satırdaki veri dursun,3 satıra istediğimi yazsın. 4 dursun 5. satıra istediğimi yazsın.
Kod:
Sub Example1()
Open ThisWorkbook.Path & "\askm.txt" For Output As #1
Write #1, ;
Write #1, ;
Write #1, Cells(3, 1);
Close #1
End Sub
 
Bir de örneğin hücre içerisindeki metinde çift tırnak var ise bunu alsın. Ama yok ise txt dosyasına tırnak eklemesin.
 
Mevcut bulanan txt dosyasının örneğin 3. ve 5 satırındaki bilgileri değiştirmek istiyorum nasıl kod yazmak gerekli.

Mevcut text dosyanız C:\TestFolder\Test.txt ise; aşağıdaki kodu deneyebilirsiniz;

Kod:
Sub Test()
    Dim MyFile As String, MyTempFile As String
    Dim NewData1 As String, NewData2 As String
    Dim LineNo1 As Integer, LineNo2 As Integer, X As Integer
    Dim FileNum1 As Long, FileNum2 As Long
    MyFile = "[COLOR=Red][B]C:\TestFolder\Test.txt[/B][/COLOR]"
    MyTempFile = "[B][COLOR=red]C:\TestFolder\Temp.txt[/COLOR][/B]"
    LineNo1 = 3
    LineNo2 = 5
    NewData1 = "Yeni veri - 1"
    NewData2 = "Yeni veri - 2"
    FileNum1 = FreeFile
        Open MyFile For Input As #FileNum1
            FileNum2 = FreeFile
                Open MyTempFile For Output As #FileNum2
                    While Not EOF(FileNum1)
                        X = X + 1
                            Line Input #FileNum1, TextData
                                If X = LineNo1 Then
                                    TextData = NewData1
                                        ElseIf X = LineNo2 Then
                                    TextData = NewData2
                                End If
                            Print #FileNum2, TextData
                    Wend
                Close #FileNum2
        Close #FileNum1
    Kill MyFile
    Name MyTempFile As MyFile
End Sub
 
Haluk Bey cevabınız için çok teşekkür ederim.
 
Rica ederim, kolay gelsin.

.
 
Geri
Üst