klasör oluşturmak ama....

Katılım
20 Ocak 2006
Mesajlar
57
a1 de gün b1 de ay var. c:\sin altında b1 deki değere göre klasör yapmak ve kitabı a1 deki değer olarak kaydetmek istiyorum. beceremedim.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,369
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Kod:
Sub kaydet()
    On Error Resume Next
    MkDir ("C:\" & [b1])
    ActiveWorkbook.SaveCopyAs "C:\" & [b1] & "\" & [a1] & ".xls"
End Sub
 
Katılım
24 Ekim 2006
Mesajlar
81
Excel Vers. ve Dili
excel 2002 türkçe
Private Sub CommandButton1_Click()
On Error Resume Next
Dim i
Dim j

i = Range("b1").Value
j = Range("a1").Value



ChDrive "c"
ChDir "C:\"
MkDir "c:\" & i
ChDir "C:\" & i


ActiveWorkbook.SaveAs Filename:="C:\" & i & "\" & j & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End Sub
 
Katılım
20 Ocak 2006
Mesajlar
57
Private Sub CommandButton1_Click()
On Error Resume Next
Dim i
Dim j

i = Range("b1").Value
j = Range("a1").Value



ChDrive "c"
ChDir "C:\"
MkDir "c:\" & i
ChDir "C:\" & i


ActiveWorkbook.SaveAs Filename:="C:\" & i & "\" & j & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End Sub
HİÇBİRŞEY OLUŞTURMADI
 
Katılım
20 Ocak 2006
Mesajlar
57
ANLATAMADIM GALİBA ARKADAŞLAR. =BUGÜN() FORMÜLLERİ İLE a1 de gün(BUGÜN İÇİN 11) b1 de ay(BUGÜN İÇİN ŞUBAT) var. c:\sin altında b1 deki değere göre ŞUBAT İSMİNDE klasör yapmak ve kitabı İSE ŞUBAT KLASÖRÜNE a1 deki değer YANİ 11 OLARAK kaydetmek istiyorum. beceremedim.
 
Katılım
24 Ekim 2006
Mesajlar
81
Excel Vers. ve Dili
excel 2002 türkçe
sn. ustaouyncu kodlar çalışıyor. sorun yok sn. anemosunkide çalışıyor ve tamda anlatığınız şeyi yapıyor. zaten ikiside aynı.
siz c:\ 'damı istiyorsunuz c:\sin klasöründemi... ? c:\sin istiyorsanız bizim kodlar yapmaz onu. uyarlayınız kodları.
 
Katılım
20 Ocak 2006
Mesajlar
57
sn. ustaouyncu kodlar çalışıyor. sorun yok sn. anemosunkide çalışıyor ve tamda anlatığınız şeyi yapıyor. zaten ikiside aynı.
siz c:\ 'damı istiyorsunuz c:\sin klasöründemi... ? c:\sin istiyorsanız bizim kodlar yapmaz onu. uyarlayınız kodları.
sağolun ilgilendiniz. ama c:\11.02.2007\11.02.2007.xls OLARAK OLUŞTURUYOR. ben c:\şubat\11.xls demek istemiştim.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Dosyanızı eklerseniz A1 ve B1 hücrelerine günü ve tarihi nasıl yazdığınızı görebiliriz. Ben her ikisinide tarih olarak yazdığınızı ve biçimlendirmeden ayarladığınızı farzederek Sn anemos'un verdiği kodu aşağıdaki gibi kullanmanızı öneriyorum.

Kod:
[LEFT]Sub kaydet()
On Error Resume Next
MkDir ("C:\" & format([b1],"mmmm"))
ActiveWorkbook.SaveCopyAs "C:\" & format([b1],"mmmm") & "\" & day([a1]) & ".xls"
End Sub[/LEFT]
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu deneyin. Bu arada sorunuzda C1 hücresi yoktu onu sonradanmı eklediniz?

Kod:
Sub kaydet()
On Error Resume Next
klasor = "C:\sin\" & Year([c1]) & "\" & Format([b1], "mmmm")
MkDir ("C:\sin\" & Year([c1]))
MkDir (klasor)
ActiveWorkbook.SaveCopyAs klasor & "\" & Day([a1]) & ".xls"
End Sub
 
Katılım
20 Ocak 2006
Mesajlar
57
Aşağıdaki kodu deneyin. Bu arada sorunuzda C1 hücresi yoktu onu sonradanmı eklediniz?

Kod:
Sub kaydet()
On Error Resume Next
klasor = "C:\sin\" & Year([c1]) & "\" & Format([b1], "mmmm")
MkDir ("C:\sin\" & Year([c1]))
MkDir (klasor)
ActiveWorkbook.SaveCopyAs klasor & "\" & Day([a1]) & ".xls"
End Sub
Sn. leventm, olmuşken tam olsun istedim. Yukarıdaki kodu modul e yapıştırdım, fakat herhangibir kayıt yapmadı. Hala çözemedim bunu. Hatam nerede olabilir onuda anlayamadım. Saygılar....
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
"on error resume next" satırını iptal ederek kodu çalıştırın, hata verdiği satırı buraya yazarsanız ona göre bir yorum yapabiliriz.

Kodun doğru çalışması için öncelikle c:\sin isimli klasörün var olması gerekir.
 
Katılım
20 Ocak 2006
Mesajlar
57
On Error Resume Next
MkDir "C:\sin\" ' bunu ekledim
klasor = "C:\sin\" & Year([c1]) & "\" & Format([b1], "mmmm")
MkDir ("C:\sin\" & Year([c1]))
MkDir (klasor)
ActiveWorkbook.SaveCopyAs klasor & "\" & Day([a1]) & ".xls"

Ok Ok. Çok Sağolun Allah Razı Olsun Oldu Bu İş. Çok Sağolun Hepiniz...
 
Üst