Makro ile TXT veri alma

Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Merhaba hocalarım ekteki txt dosyaları paylaşımdaki klasörlerde oluşuyor . 2 firmanında ayrı klasörde txt dosyalar var yapmak istediğim makro ile 10. satırdaki bilgileri excele çekmek istiyorum. hangi firmanın bilgisi ise b hücresine yazarsa cok iyi olur . Ben yapmaya çalıştım fakat direk txt içerigini alan kodlar var oyuzden yardımızı rica ediyorum.
 

Ekli dosyalar

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Dosyanız...

.
 

Ekli dosyalar

Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Çok sağolun haluk hocam deneyince bilgi vericem tekrardan teşekkürler
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Hocam iyi gecdler şimdi deneme fırsatım oldu . Tam istediğim gibi olmuş çok teşekkürler ama birşeyi atlamışım klasörlerin içinde başka txt var . Sadece d sütununda yazan txt dosya adlarını arayıp bilgileri getirmesi cok iyi olur eğer bu olursa konu tamamen çözülmüş olucaktır . Tekrardan teşekkürler
 

Ekli dosyalar

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
D sütunundaki dosya isimlerini kullanmadan, eğer klasörlerdeki aradığınız text dosyalarının adı "Mesaj.txt" ile bitiyorsa;



C#:
Sub Test()
'   Haluk - 17/04/2022
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set myFolder = FSO.GetFolder(ThisWorkbook.Path)
  
    Range("A1:B1") = Split("Data Firma")
    i = 1
    For Each xFolder In myFolder.SubFolders
        i = i + 1
        For Each xFile In xFolder.Files
            If Right(xFile.Name, 9) = "Mesaj.txt" Then
                MyFile = xFolder.Path & "\" & xFile.Name
                Open MyFile For Input As #1
                    fileData = Input(LOF(1), #1)
                    Range("A" & i) = Replace(Split(fileData, vbCrLf)(9), Chr(34), "")
                    Range("B" & i) = xFolder.Name
                Close #1
            End If
        Next
    Next
End Sub
.
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Çok teşekkürler hocam emeginize sağlık bu şekilde daha iyi oldu.
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Haluk hocam tekrardan k.bakmayın sistem biraz değişti . Txt dosyaları bir klasörde olucak o şekilde düzenleyebilirmiyiz kodu şimdiki kod alt klasördeyse txt o şekilde çalışıyor . dosya adını b sütununa yazdırmamız yeterli olur . Tekrardan k.bakmayın
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
C#:
Sub Test2()
'   Haluk - 17/04/2022
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set myFolder = FSO.GetFolder(ThisWorkbook.Path)
    
    Range("A1:B1") = Split("Data Firma")
    i = 1
    For Each xFile In myFolder.Files
        If Right(xFile.Name, 9) = "Mesaj.txt" Then
            i = i + 1
            Open xFile For Input As #1
                fileData = Input(LOF(1), #1)
                Range("A" & i) = Replace(Split(fileData, vbCrLf)(9), Chr(34), "")
                Range("B" & i) = Split(Split(xFile.Name, "_")(0), "-")(1)
            Close #1
        End If
    Next
End Sub
.
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Çok sağolun hocam
Range("B" & i) = Split(Split(xFile.Name, "_")(0), "-")(1)
Bu satırda hata verdi kod ama
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Verdiğiniz örnek dosyaların adı;

"CS-AKTUEL_CS-AKTUEL-K1_Mesaj.txt"

şeklindeydi..... Bunlarda hata vermez.

.
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Kontrol ediyorum tekrardan
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Evet hocam 1 tane dosyanın adında sıkıntı varmış ondan dolayı teşekkür ederim
 
Üst