Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 10-08-2017, 22:23   #1
ozanca024
 
Giriş: 10/08/2017
Mesaj: 2
Excel Vers. ve Dili:
2013 VBA
Varsayılan Toplu içe Aktarma

Aynı klasör içinde listelenmiş birden çok .txt,.xsr,.csv vb. uzantılı metin dosyalarını excele tablo olarak nasıl aktarabilir. Bir tane olduğu zaman yapıyorum ama otomatik dosyayı çağırıp , excel çalışma sayfasına da çağrılan dosyaya uygun bir isim verirse harika olur. Yardımcı olmak isteyenlere teşekkür ederim.

Makro:

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub Makro1()
'
' Makro1 Makro
'

'
    ActiveWorkbook.Worksheets.Add
    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;C:\Users\Admin\Desktop\aktarma\liste (1).xsr", Destination:=Range( _
        "$A$1"))
        .CommandType = 0
        .Name = "liste (1)"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 1254
        .TextFileStartRow = 1
        .TextFileParseType = xlFixedWidth
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1)
        .TextFileFixedColumnWidths = Array(16, 8, 10, 19, 10)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
End Sub
ozanca024 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 11-08-2017, 14:22   #2
esalci
 
Giriş: 08/08/2017
Şehir: İstanbul
Mesaj: 20
Excel Vers. ve Dili:
Office 365 ProPlus İngilizce
Varsayılan

Aşağıdaki kod açık excel kitabına bir dizindeki ilgili dosyalar için aynı dosya isminde ayrı sheetler açıyor. Dosya isimlerinde geçersiz karakter olmamalı. Verdiğin kodu da eklemeye çalıştım. Gerekli diğer açıklamalar kod içerisinde verilmiştir.


Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub LoopThroughFiles()
  Dim dosya, dizin, uzanti, tumdizin As Variant
  dizin = "c:\testfolder\" '''İLGİLİ DİZİN SOLDAKİ GİBİ EKLENMELİ
  dosya = Dir(dizin)
  
  While (dosya <> "")
  
        uzanti = Right(dosya, Len(dosya) - InStr(dosya, "."))
    
        If uzanti = "txt" Or uzanti = "xsr" Or uzanti = "csv" Then  '''DAHA BAŞKA DOSYA TİPLERİ VARSA BURAYA SOLDAKİ GİBİ EKLENMELİ '''
      
            With ThisWorkbook
                .Sheets.Add(After:=.Sheets(.Sheets.Count)).Name = Left(dosya, Len(dosya) - Len(uzanti) - 1)
            End With
            
            
            '''YAPILACAK İŞLEMLER BURDA BAŞLIYOR'''
            
            tumdizin = "TEXT;" & dizin & dosya
            With Sheets(Sheets.Count).QueryTables.Add(Connection:=tumdizin, Destination:=Range("$A$1"))
                .CommandType = 0
                .Name = dosya
                .FieldNames = True
                .RowNumbers = False
                .FillAdjacentFormulas = False
                .PreserveFormatting = True
                .RefreshOnFileOpen = False
                .RefreshStyle = xlInsertDeleteCells
                .SavePassword = False
                .SaveData = True
                .AdjustColumnWidth = True
                .RefreshPeriod = 0
                .TextFilePromptOnRefresh = False
                .TextFilePlatform = 1254
                .TextFileStartRow = 1
                .TextFileParseType = xlFixedWidth
                .TextFileTextQualifier = xlTextQualifierDoubleQuote
                .TextFileConsecutiveDelimiter = False
                .TextFileTabDelimiter = True
                .TextFileSemicolonDelimiter = False
                .TextFileCommaDelimiter = False
                .TextFileSpaceDelimiter = False
                .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1)
                .TextFileFixedColumnWidths = Array(16, 8, 10, 19, 10)
                .TextFileTrailingMinusNumbers = True
                .Refresh BackgroundQuery:=False
            End With
            
            '''YAPILACAK İŞLEMLER BURDA BİTİYOR''
       End If
     dosya = Dir
  Wend
End Sub
esalci Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-08-2017, 23:18   #3
ozanca024
 
Giriş: 10/08/2017
Mesaj: 2
Excel Vers. ve Dili:
2013 VBA
Varsayılan

Sn. Esalci, cevabınız için teşekkür ederim. İlgili kodu çalıştırdığım zaman CommandType = 0 ve .Sheets.Add(After:=.Sheets(.Sheets.Count)).Name = Left(dosya, Len(dosya) - Len(uzanti) - 1) satırlarında hata alıyorum. İyi Günler Diliyorum


ozanca024 Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 17:13


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Hurda - Torna - Çorlu Web Tasarım - Tarot Falı - Fenerbahçe Haberleri - Trakya Haberleri - investing - Hurda - Kozmetik Ürünler - Excel Eğitimi - Lingerie - Dyeing Machine - Çorlu Temizlik- Hazır Site- SEO- Çorlu Burun Estetiği- Karton Bardak- Çorlu Pimapenci- İstanbul Avukat- Çorlu Kekemelik- Edirne Su Arıtma- Çorlu Perde Yıkama- Marmara Ereğlisi Hotel- Site Yönetimi- Led Aydınlatma- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Kırklareli- Pronet Çerkezköy- Pronet Çorlu- Pronet Lüleburgaz- Pronet Keşan- Çorlu Kamera- Çorlu Fiber- Çorlu Araç Takip-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden