• DİKKAT

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

birden çok dosyanın tek komutla açılması

Katılım
4 Haziran 2008
Mesajlar
798
Excel Vers. ve Dili
Excel 2021 TÜRKÇE
arkadaşlar elimde 15 tane veya daha fazla dosya var varsayalım(Excel):).bunların hepsini birden makro ile nasıl açabiliriz?
 
Sayın kemalist,
dosya isimlerini hücrelere yazın ve aşağıdaki kodları kullanın:


Sub ac()
For i = 1 To 10
Workbooks.Open Filename:="C:\" & Cells(i, 1)
Next
End Sub
 
arkadaşlar elimde 15 tane veya daha fazla dosya var varsayalım(Excel):).bunların hepsini birden makro ile nasıl açabiliriz?

.

Makrosuz:

İlgili tüm dosyalarınızı açın.

View > Save Workspace - Görünüm > Çalışma Alanını Kaydet

Dosyaya bir ad verin.


Bu dosyayı açtığınızda, bu dosyaların hepsi açılacaktır.

.
 
sayın bedersu ve sayın yurttaş her ikinizede ilginizden dolayı teşekkür ederim.

Sub ac()
For i = 1 To 10
Workbooks.Open Filename:="C:\Users\Mert\Transfer\A,B,C,D,E,F,G,H" & Cells(i, 1)
Next
End Sub
Excel dosyaları:A,B,C,D,E,F,G,H
Linki yazmamda yardım edermisiniz?
 
Sayın kemalist,
cells(i,1) komutu ile 10 tane hücreyi okutuyoruz.Bu hücrelere kitap isimlerini yazarsanız A.xls gibi,kodlar zaten bu kitapları açacaktır.Hücreye değil de direkt olarak kodlarla bu kitapları açmak istiyorum diyorsanız,kitap isimlerinde belli bir sıra olması lazım ki döngü kurulabilsin.Mesela A1.xls,A2.xls,vs gibi.
Workbooks.Open Filename:="C:\Users\Mert\Transfer\A" & i & ".xls" şeklinde yazabilirsiniz.
 
Sub ac()
For i = 1 To 10
Workbooks.Open Filename:="C:\Users\Mert\Transfer\A1.xls,B2.xls,C3.xls,D4.xls" & Cells(i, 1)
Next
End Sub

Böyle uygulamaya çalıştım fakat bende bi hata mı var?
 
Sayın kemalist,
Bu şekilde yazarsanız dosya ismini "A1.xls,B2.xls,C3 .xls,D4.xls" olarak algılar.Bu şekilde yapmak yerine ilk mesajımda yazdığım gibi kitap isimlerini hücrelere yazın ve oradan çağırtın.
 
Merhaba,

Alternatif olarak aşağıdaki koduda kullanabilirsiniz.

Kod:
Sub DOSYALARI_AÇ()
    Dim Dosyalar(), X As Integer
    
    Dosyalar = Array("A1.xls", "A2.xls", "A3.xls", "A4.xls", "A5.xls")
    
    For X = 0 To UBound(Dosyalar) - 1
        Workbooks.Open Filename:="C:\Users\Mert\Transfer\" & Dosyalar(X)
    Next
End Sub
 
Güzel ve pratik bir cevap sayın Korhan Ayhan. :bravo:
 
Geri
Üst