• DİKKAT

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

klasör içindeki dosyaların listesi

Katılım
25 Nisan 2006
Mesajlar
177
Excel Vers. ve Dili
OFFİCE XP TÜRKÇE
OFFİCE 2003 TÜRKÇE
OFFİCE 2010 TÜRKÇE
OFFİCE 2013 TÜRKÇE
sevgili forum üyeleri. Bayaramınız mübarek olsun;

herhangi bir klasör (örn: Belgelerim.) içindeki dosyaların listesini bir form üzerindeki listbox veya combobox vasıtası ile nasıl yapabilirim.
 
Merhabalar.
Aşağıdaki Kodlar "C:\Evren" klasörü içerisinde bulunan *.xls uzantılı dosyaları
listbox'ta listeliyor.Siz dosya yolunu ve arnacak dosya adını veya uzantılarını değştirerek bir deneyiniz.
Kod:
Private Sub UserForm_Initialize()
dosya = Dir("C:\Evren\*.xls")
Do While dosya <> ""
    ListBox1.AddItem dosya
    dosya = Dir
Loop
End Sub
 
sn sezar.
kodlar tam istediğim gibi.

bir de listbox içindeki dosya adı üzerine tıkladığımda o dosyayı açıp aktıf hale getirmemi sağlayacak kodu nasıl yazmalıyım.
 
Merhabalar.
Aşağıdaki yol'da C:\Evren kalsörü gösteriliyor.Listbox'ta listelediğiniz Klasörün Yolunu yazınız.
Tek tıklamayla açmak için
Kod:
Private Sub ListBox1_Click()
Workbooks.Open ("C:\Evren\" & ListBox1.Value)
End Sub
Çift yıklama ile açmak için
Kod:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Workbooks.Open ("C:\Evren\" & ListBox1.Value)
End Sub
 
sn.sezar;

faydalı katkılarınızdan dolayı çok teşekkür ederim.
tam istediğim gibi oldu
 
Soruya Cozum uretilmiş ama bende kucuk bir çözüm ilave etmek istiyorum.

Form üzerinde texbox'a adresi aşagıdaki sekilde giriniz.

Örnek: c: veya c:\Windows

Kısacası son klasor'e "\" işareti koymadan calıstırınız.
 
güzel bir alternatif.


bu aşamada yapmak istediğim bir husus ta; herhangi bir klasör içindeki
dosyaların tamamındın belirli hücrelerinden (örn: C1 ve G6) verileri listelemek. ?
 
Dosyaların bulunduğu klasör yolunu belirtirmisiniz. Ayrıca alınan veriler altaltamı kaydedilecektir. Kaydedilecek sütunlar hangileridir.
 
sn leventm;

haklısınız...

Yol: C:\MÜŞTERİ\(dosyalar)
***çalıştığım dosyada GİRİŞ ve RAPOR sayfaları mevcut.

Bilgiler ise;
RAPOR sayfasında B2 Hücresine veri alınacak Dosyadaki C1 değeri
C2 " " " " G6 " gelmeli


Her dosya bir alt satıra ilave olmalı ve klasörden dosya silindiğinde Listede görünmemeli... sizce olabilir mi.? Yardımlarınıza ihtiyacım var...
 
Birde veri alınacak dosyaların hep aynı sayfalarındanmı alınacak ayrıca bu sayfanın adı nedir.

RAPOR sayfasında B2 Hücresine veri alınacak Dosyadaki C1 değeri
C2 " " " " G6 " gelmeli

Bu ifadenizi anlayamadım.

Her dosya bir alt satıra ilave olmalı ve klasörden dosya silindiğinde Listede görünmemeli... sizce olabilir mi.?

Elbette olabilir, önereceğim kodu her çalıştırdığınızda verileri otomatikman güncelleyecektir.
 
Bunu şu şekilde anlatmalıyım...

Çalıştığım :
Dosya : "GİRİŞ"
Sayfaları : "GİRİŞ" ve "RAPOR"

Veri Alınacak :
Klasör : "MÜŞTERİ"
Dosyalar : "Ahmet", "Mehmet", "Veli" v.b.
Sayfalar : "GİRİŞ" (Hepsinde aynı ve Tek sayfa)
C1 : Müşteri Adı
G6 : Borç Bakiyesi

.........Bütün dosyaların yapısı aynı.........

Dosyalardaki "GİRİŞ" Sayfasından Sadece "C1" ve "G6" hücrelerinden bilgi almak istiyorum.
(Aslına bakarsanız yapmak istesiğim Bir Bakiye listesi çıkarmak.)
 
Bunu şu şekilde anlatmalıyım...

Çalıştığım :
Dosya : "GİRİŞ"
Sayfaları : "GİRİŞ" ve "RAPOR"

Veri Alınacak :
Klasör : "MÜŞTERİ"
Dosyalar : "Ahmet", "Mehmet", "Veli" v.b.
Sayfalar : "GİRİŞ" (Hepsinde aynı ve Tek sayfa)
C1 : Müşteri Adı
G6 : Borç Bakiyesi

.........Bütün dosyaların yapısı aynı.........

Dosyalardaki "GİRİŞ" Sayfasından Sadece "C1" ve "G6" hücrelerinden bilgi almak istiyorum.
(Aslına bakarsanız yapmak istesiğim Bir Bakiye listesi çıkarmak.)

Yukarıda belirtiğiniz doğrultuda musteriler ait excel sayfaları tek sheet'ten oluştugunu varsayarak kucuk bir çalışma hazırladım.
Daha Profosyonelce hazırlanabilir diye dusunuyorum.

Dosyayı ınceleyınız.Umarım işinizi görür.

Ctrl+r yaparak kodu calısıtırınız.
 
Aşağıdaki koduda deneyebilirsiniz.

Kod:
Sub verial()
[a:c].ClearContents
For Each Dosya In CreateObject("Scripting.FileSystemObject").GetFolder("C:\MÜŞTERİ").Files
c = c + 1
Cells(c, "a") = Replace(Dosya.Name, ".xls", "")
Cells(c, "b") = ExecuteExcel4Macro("'C:\MÜŞTERİ\[" & Dosya.Name & "]GİRİŞ'!R1C3")
Cells(c, "c") = ExecuteExcel4Macro("'C:\MÜŞTERİ\[" & Dosya.Name & "]GİRİŞ'!R6C7")
Next
End Sub
 
sn Kemaldemir;
Bilan&#231;o &#231;al&#305;&#351;man&#305;z &#231;ok g&#252;zel &#231;ok faydaland&#305;m. yanl&#305;z kodlar d&#246;ng&#252;de fazla kal&#305;yorlar. Her&#351;ey i&#231;in te&#351;ekk&#252;r ediyorum. tak&#305;ld&#305;&#287;&#305;m&#305;zda sizin gibi k&#305;ymetli dostlar&#305;n hemen &#351;urada oldu&#287;unu bilmek huzur veriyor.

sn Leventm' in kodlar&#305;n&#305;z &#231;ok k&#305;sa ve &#231;ok i&#351;levli. a&#231;&#305;k&#231;as&#305; &#351;a&#351;&#305;rt&#305;c&#305;.
kendinizi bu kadar nas&#305;l geli&#351;tirdiniz &#351;a&#351;&#305;rmamak elde de&#287;il. Ne diyebilirim ki HAR&#304;KA...
 
Geri
Üst