Tüm txt dosyaları sayfalara aktarma

mnz

Katılım
5 Eylül 2005
Mesajlar
282
Excel Vers. ve Dili
Excel 2002 (Tr)
Bir klasör içinde bulunan farklı isimlerdeki .txt dosyalarını excel e yeni sayfa ekleyerek nasıl aktarabiliriz.

Kodları oluşturamıyorum.
Rand ile olur mu diye düşünüyorum. ama aynı dosya tekrar açılabilir.
for next ile de olmaz çünkü txt dosya isimleri farklı.
nasıl yapabiliriz?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
klasör yolunu verirmisiniz. Birde klasörde sadece txt dosyaları bulunursa iyi olur.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu deneyin. Yapmanız gereken sadece kod içindeki "C:\text\" yerine kendi klasörünüzün yolunu yazmaktır.

Kod:
Sub verial()
For Each dosya In CreateObject("Scripting.FileSystemObject").GetFolder("C:\text").Files
If Right(dosya.Name, 4) <> ".txt" Then GoTo 10
Sheets.Add.Move After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = dosya.Name
ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\text\" & dosya.Name, Destination:=Range("A1")).Refresh BackgroundQuery:=False
10 Next
End Sub
 

mnz

Katılım
5 Eylül 2005
Mesajlar
282
Excel Vers. ve Dili
Excel 2002 (Tr)
Bir de .html uzantılı dosyalar için denedim. ".txt" ilgili yeri değiştirdim. Hiçbir hareket olmuyor.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bir de .html uzantılı dosyalar için denedim. ".txt" ilgili yeri değiştirdim. Hiçbir hareket olmuyor.
Cevabınızdan txt dosyaları için deneyip doğru netice aldığınızı anlayabilirmiyim. html için aşağıdaki satırda kırmızı renkli olan değişiklikleri yapın.
[vb:1:fe946ef107]If Right(dosya.Name, 5) <> ".html" Then GoTo 10
[/vb:1:fe946ef107]
 

mnz

Katılım
5 Eylül 2005
Mesajlar
282
Excel Vers. ve Dili
Excel 2002 (Tr)
Evet txt dosyaları sorunsuz çalıştı.
Yukarıdaki değişiklikleri yaptım ve denedim sonuç olumsuz.
Dosya uzantılarını kontrol ettim. .htm uzantılıymış.
If Right(dosya.Name, 5) <> ".htm" Then GoTo 10
olarak değiştirdim. olmadı.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
uzantı htm ise satır içindeki 5 i 4 yapın.

If Right(dosya.Name, 4) <> ".htm" Then GoTo 10
 

mnz

Katılım
5 Eylül 2005
Mesajlar
282
Excel Vers. ve Dili
Excel 2002 (Tr)
SÜPERSİNİZ :eek:k::
 
Üst