Vba: klasördeki tüm dosyalar nasıl açılır


Belirli bir klasördeki tüm dosyaları açmak için VBA’da Workbooks.Open yöntemiyle Do While döngüsünü kullanabilirsiniz.

Bunu pratikte yapmanın yaygın bir yolu:

 Sub OpenAllFilesInFolder()

Dim ThisFolder As String
Dim ThisFile As String

'specify folder location and types of files to open in folder
ThisFolder = "C:\Users\bob\Documents\current_data"
ThisFile = Dir(ThisFolder & "\*.xlsx")

'open each xlsx file in folder
Do While ThisFile <> ""
    Workbooks.Open Filename:=ThisFolder & "\" & ThisFile
    ThisFile = Dir
Loop

End Sub

Bu özel makro, aşağıdaki klasörde .xlsx uzantılı tüm dosyaları açar:

  • C:\Kullanıcılar\bob\Documents\current_data

Aşağıdaki örnekte bu makronun pratikte nasıl kullanılacağı gösterilmektedir.

İlgili: VBA Kullanarak Tüm Açık Çalışma Kitaplarının Listesini Alma

Örnek: Bir klasördeki tüm dosyalar VBA kullanılarak nasıl açılır?

Diyelim ki, üç adet .xlsx dosyası içeren current_data adında aşağıdaki klasöre sahibiz:

Diyelim ki bu klasördeki tüm .xlsx dosyalarını açmak için VBA’yı kullanmak istiyoruz.

Bunun için aşağıdaki makroyu oluşturabiliriz:

 Sub OpenAllFilesInFolder()

Dim ThisFolder As String
Dim ThisFile As String

'specify folder location and types of files to open in folder
ThisFolder = "C:\Users\bob\Documents\current_data"
ThisFile = Dir(ThisFolder & "\*.xlsx")

'open each xlsx file in folder
Do While ThisFile <> ""
    Workbooks.Open Filename:=ThisFolder & "\" & ThisFile
    ThisFile = Dir
Loop

End Sub

Bu makroyu çalıştırdığımızda klasörde bulunan .xlsx uzantılı her dosya tek tek açılacaktır.

Klasördeki dosyalardan herhangi biri zaten açıksa bu dosyaların açık kalacağını unutmayın.

Not : VBA’daki Workbooks.Open yönteminin tüm belgelerini burada bulabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

VBA kullanarak bir dosyayı yeniden adlandırma
VBA kullanarak bir klasördeki dosyalar nasıl listelenir
VBA kullanılarak dosyanın var olup olmadığı nasıl kontrol edilir

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir