Dosya Aç Kodunda Genelleştrirme Düzeltmesi

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba arkadaşlar. Forumdan edindiğim aşağıdaki kodun yardımıyla istediğim dosyanın tam adını verirsem makroyu kullanarak dosyayı açabiliyorum. Dosyanın isimi her gün değişiyor. Dosya adlarının ilk harfleri her zaman sabit : TE, WE, SE. Ama devamı her gün değişiyor. TE1101, TE1102 gibi.

Bu yüzden dosya = "TE1024.txt" dosyası yerine kodu nasıl revize etmeliyim ki "TE" ile başlayan dosyayı aç olarak işlev görsün.


Sub dosya_ac()
On Error GoTo yok
Dim yol, dosya As String
yol = "C:\Documents and Settings\kb\Desktop\logistik\"
dosya = "TE1024.txt"
Workbooks.Open (yol & dosya)
Exit Sub
yok:
MsgBox "Dosya Bulunamadi"
End Sub
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,680
Excel Vers. ve Dili
Excel 2019 Türkçe
Dosya ismi günün tarihi ile mi orantılı?
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Genelde günü tarihi ile orantılı. Ancak mümkünse * tarzında bir genelleme daha uygun düşüyor. Yani günün tarihi değil de başka bir veri olsa da çalışacak bir kod !!!
 
Katılım
14 Şubat 2006
Mesajlar
3,426
Excel Vers. ve Dili
(Excel 2016 - İngilizce)
Altın Üyelik Bitiş Tarihi
30-11-2022
Peki yol = "C:\Documents and Settings\kb\Desktop\logistik\" klasöründe TE ile başlayan başka dosyalar mevcut oluyor mu?
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Hayır olmuyor. TE ile başlayana sadece 1 adet dosya oluyor. Ancak Başka harfler ile başlayan dosyalar da oluyor.
 
Katılım
14 Şubat 2006
Mesajlar
3,426
Excel Vers. ve Dili
(Excel 2016 - İngilizce)
Altın Üyelik Bitiş Tarihi
30-11-2022
Aşağıdaki kodları deneyiniz.

Kod:
[COLOR=blue]Sub [/COLOR]dosya_ac[COLOR=blue]()[/COLOR]
On Error GoTo yok
Dim yol, dosya As String
yol = "C:\Documents and Settings\kb\Desktop\logistik\"
[COLOR=blue]'*****************************************************[/COLOR]
Dim ds, a, dc, f, s
Set ds = CreateObject("Scripting.FileSystemObject")
Set f = ds.GetFolder(yol)
Set dc = f.Files
For Each dosyaismi In dc
If Left(dosyaismi.Name, 2) = "TE" Then
dosya = dosyaismi
Exit For
End If
Next
[COLOR=blue]'*****************************************************[/COLOR]
Set ds = Nothing
Set f = Nothing
Set dc = Nothing
Workbooks.Open (dosya)
Exit Sub
yok:
MsgBox "Dosya Bulunamadi"
[COLOR=blue]End Sub[/COLOR]
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Çok Teşekkürler

Sayın Ripek çok çok teşekkürler, işte budur. Elleriniz dert görmesin. Tam istediğim gibi oldu.
 
Katılım
14 Şubat 2006
Mesajlar
3,426
Excel Vers. ve Dili
(Excel 2016 - İngilizce)
Altın Üyelik Bitiş Tarihi
30-11-2022
İşinize yaradığına sevindim.
 
Katılım
26 Nisan 2006
Mesajlar
50
Peki tarihin değişken olduğu dosyaları açmak veya o dosyalara link vermek nasıl mümkün olur? Benzer bir durumdan ben de muzdaribim ama benim hedef directorim de bu dosyalar tarih sıralı olarak bulunuyor

AKR2410.xls
AKR2510.xls

şeklinde gidiyor misal
 
Üst