EXCEL TOPLU XML ACMA

Katılım
14 Kasım 2017
Mesajlar
22
Excel Vers. ve Dili
TÜRKÇE
Dostlar Merhaba,

Elimde çokça .xml uzantılı dosya bulunmakta. Ben bu dosyaları excelde açmaya çalıştığımda her dosya için yeni bir çalışma sayfası açıyor. Toplu olarak bütün xml dosyalarını tek bir excel sayfasında görüntüleme yapmak istiyorum. Yardımlarınızı rica ederim.
 

mancubus

Destek Ekibi
Destek Ekibi
Katılım
6 Ocak 2010
Mesajlar
2,224
Excel Vers. ve Dili
İŞ: 2021 Win Eng
PHP:
Sub xlTR_192851_çok_sayıda_xml_dosyayı_aktif_sayfaya_import_etme()

    Dim xmlKlasor As String, xmlDosyalar As String, xmlDosya As String
    
    With Application.FileDialog(msoFileDialogFolderPicker)
        .AllowMultiSelect = False
        .InitialFileName = ThisWorkbook.Path
        If .Show = -1 Then xmlKlasor = .SelectedItems(1) & "\" Else Exit Sub 'klasör seçilmez ise uyarı vermeden makroyu sona erdirir
    End With
    
    xmlDosyalar = Dir(xmlKlasor & "*xml")
    
    Do While xmlDosyalar <> ""
        xmlDosya = xmlKlasor & xmlDosyalar
        ActiveWorkbook.XmlImport URL:=xmlDosya, ImportMap:=Nothing, Overwrite:=True, Destination:=ActiveCell
        'Selection.End(xlDown).Offset(1).Select 'xml dosyaları başlıkları ile, alt alta bitişik import eder
        Selection.End(xlDown).Offset(2).Select 'xml dosyaları başlıkları ile, alt alta arada 1 boş satır bırakarak import eder
        xmlDosyalar = Dir()
    Loop

End Sub
 

mancubus

Destek Ekibi
Destek Ekibi
Katılım
6 Ocak 2010
Mesajlar
2,224
Excel Vers. ve Dili
İŞ: 2021 Win Eng
Ofis 2003 ve önceki versiyonlarda 65.536, sonraki versiyonlarda 1.048.576 olan satır sayısı limitine dikkat etmek gerekecektir.
 
Katılım
17 Ağustos 2011
Mesajlar
71
Excel Vers. ve Dili
2010 türkçe
Değerli Mancubus Üstadım. Kodunuzu kullandım. Teşekkür ederim, elinize sağlık. Kodu çalıştırdığımda ilk XML dosyası import edip, ikincisine başlarken "XML tablosu farklı bir XML eşlmesine bağlı olduğundan işlem tamamlanamıyor" hatası veriyor ve işlem sonlanıyor. Kodun başına "On Error Resume Next" yazıp çalıştırdığımda ise hedef klasördeki dosyaları bir atlayarak içeriye alıyor. Klasörde 100 dosya varsa bir atlayarak import ediyor. 50 adet XML dosyası import edilmiş oluyor.

Nerede yanlış yapıyor olabilirim? Ya da birden fazla XML dosyasını import edebileceğim farklı bir kod var mıdır? Konuyu baya bir araştırdım ama VBA-XML yeni öğrenmeye başladığım bir konu. Yardımlarınız için şimdiden teşekkür ederim.
 
Üst