• DİKKAT

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

DEĞİŞKEN KLASÖR VE EXCEL DOSYASI AÇMA

evrimmm

Altın Üye
Altın Üye
Katılım
6 Temmuz 2007
Mesajlar
35
Excel Vers. ve Dili
excel 2003
Arkadaşlar merhaba,

Benim C klasörü altında bir klasörüm var ve bu klasör içinde aylık klasörlerim var ve bu klasörlerin içindede birden fazla excel dosyalarım var.
(C \ ÜRÜNLER \ OCAK ÇIKIŞ \ A.xlsx, B.xlsx, C.xlsx. ....)
ŞUBAT ÇIKIŞ \ A.xlsx, B.xlsx, C.xlsx. ....)
MART ÇIKIŞ \ A.xlsx, B.xlsx, C.xlsx. ....) gibi


Ben userform ile kullanıcıdan öncelikle aylık seçeceği klasörü istiyorum örneğin: o ay Mart çıkışlarını hesaplaması gerekiyor ise Mart klasörünü seçmesini istiyorum ve bu klasörün adını yani .value özelliğini bir değişkene atıyorum "k" gibi.Eğer kullanıcı Mart klasörünü seçti ise ben o klasör içinde ki excel dosyalarını açmak ve işlem yapmak istiyorum. Excel isimleri her ay sabit olup onları da adi= cells( i, j) gibi bir yerden alıyorum ve bu iki değişkeni birleştirip; excel dosyalarını açmak istiyorum​
Workbooks.open Filename:= "C:\ ÜRÜNLER \ k & adi & ".xlsx" gibi bir metod ile ulaşmaya çalışıyorum, fakat kodum çalışmıyor. Yardımcı olabilir misiniz?​
 
Merhaba
k = MART ÇIKIŞ ise
Aşağıdaki gibi deneyin.
Kod:
Workbooks.Open Filename:="C:\ÜRÜNLER\" & k & "\" & adi & ".xlsx"
 
Sayın Plint ,aslında bu kodu bende bu şekilde yazmıştım fakat çalışmadı arada ki klasör ismini maalesef okumuyor.

C:\ÜRÜNLER\A.xlsx olarak gözüküyor , fakat benim istediğim Mart klasörü seçildi ise;
C:\ÜRÜNLER\ MART ÇIKIŞ \ A.xslx
Şubat seçildi ise
C:\ÜRÜNLER\ ŞUBAT ÇIKIŞ \ A.xslx şeklinde çalışmasını istiyorum.
 
Klasör seçimini yapan kodlarınızı bilmiyorum ama aşağıdaki iki şekilde kullanılabilir
Kodlar içindeki
Kod:
i=2
J=1
adi = Cells(i, j)
satırları ile açılacak dosya adının "A2" hücresinde yazılı olduğu varsayılmıştır.


Kod:
Private Sub CommandButton1_Click()

Set klasorsec = CreateObject("Shell.Application").BrowseForFolder(0, "Lütfen bir klasör seçin !", 0, "C:\ÜRÜNLER\")
If klasorsec Is Nothing Then Exit Sub

yol = klasorsec.Items.Item.Path
i=2
J=1
adi = Cells(i, j)  

Workbooks.Open Filename:=yol & "\" & adi & ".xlsx"
End Sub

Kod:
Private Sub CommandButton2_Click()

Set klasorsec = CreateObject("Shell.Application").BrowseForFolder(0, "Lütfen bir klasör seçin !", 0, "C:\ÜRÜNLER\")
If klasorsec Is Nothing Then Exit Sub

k = klasorsec.Items.Item

i=2
J=1
adi = Cells(i, j)

Workbooks.Open Filename:="C:\ÜRÜNLER\" & k & "\" & adi & ".xlsx"

End Sub
 
Son düzenleme:
Sayın PLİNT;

Kodlardaki "i" ve "j" değerlerinin de belirlenmesini sağlayan ilaveyi veya soruyu soran arkadaşa bununla ilgili bir açıklamayı yaparsanız iyi olur diye düşünüyorum.

.
 
Merhaba
Haklısınız Haluk hocam,
Sayın evrimmm
Excel isimleri her ay sabit olup onları da adi= cells( i, j) gibi bir yerden alıyorum
diye belirttiği için gerek görmemiştim; yukarıdaki mesajıma küçük bir açıklama ekledim.
 
Sayın Plint,

CommandButton2 örneğinizi denedim ve kod işime yaradı elinize emeğinize sağlık çok teşekkür ederim. Geç dönüşüm için kusura bakmayın lütfen tekrardan teşekkür ederim. Saygılarımla,
 
Arkadaşlar merhaba, bende benzer bir problem yaşıyorum. Klasörüm sabit ama excelin ismi değişiyor nasıl yapmam gerekir? Şimdiden teşekkürler, kolay gelsin herkese.
Kod:
Workbooks.Open ("\\Fs1-mitas\msim\03_Kaynakli_Imalat_Fabrika\01_Üretim_Planlama\01_İş_Planı_Raporu\")

Bu kodum çalışmadı..
 
Geri
Üst