• DİKKAT

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

Tarih süzen makro hatalı çalışıyor

  • Konbuyu başlatan Konbuyu başlatan bedri41
  • Başlangıç tarihi Başlangıç tarihi
Katılım
3 Nisan 2008
Mesajlar
777
Excel Vers. ve Dili
Office 2007 Türkçe
Tarih bazında süzme yapıp süzdüklerini kopyalayan ve başka bir dosyaya taşıyan aşağıdaki makro süzdüğü tarih aralığında sadece günleri dikkate alıyor.
Örneğin 01-15 Mart aralığı istendiğine kayıtlar arasında 15 den küçük Nisan Mayıs Haziran günlerideı varsa bunlarıda süzüyor.

Makroda nasıl bir değişiklik yapılması gerekiyor lütfen yardım


Private Sub CommandButton1_Click()
bastarih = CDate(TextBox1.Value)
sontarih = CDate(TextBox2.Value)
Workbooks("SHOPPING.xls").Worksheets("GIRIS").Range("A15").AutoFilter Field:=1, Criteria1:=">=" & CDate(bastarih), Operator:=xlAnd, Criteria2:="<=" & CDate(sontarih)
Workbooks("SHOPPING.xls").Worksheets("GIRIS").Range("A15:AC15000").Copy
Workbooks.Open ThisWorkbook.Path & "/" & TextBox3 & ".XLS"
Workbooks(TextBox3 & ".XLS").Worksheets("GIRIS").Range("A3").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Workbooks(TextBox3 & ".XLS").Close SaveChanges:=True
End Sub
 
İlgili satırı aşağıdaki gibi denermisiniz? :cool:
Kod:
Workbooks("SHOPPING.xls").Worksheets("GIRIS").Rang e("A15").AutoFilter Field:=1, Criteria1:=">=" & [B][COLOR="Red"]cdbl([/COLOR][/B]CDate(bastarih)[B][COLOR="red"])[/COLOR][/B], Operator:=xlAnd, Criteria2:="<=" & [B][COLOR="red"]cdbl([/COLOR][/B]CDate(sontarih)[B][COLOR="red"])[/COLOR][/B]
 
Sn. Gizlen teşekkür ederim. Tarih büyüklükleri ile ilgili sorun verdiğiniz ilave ile çözüldü. Ancak ben tabloya Userform ile veri yazıdırıyorum ve tarih formatımda dd.mm.yyyy şeklinde.
Verdiğiniz ilaveyi ekledikten sonra Userformun yazdırdığı tarihleri dikkate almıyor, tarihler üzerinde el ile manuel değişiklik yaparsan bu yaptıklarımı tarih sıralı şekilde sorunsuz süzüyor
 
Userform ile sayfaya tarih yazarken cdate kullanın.
A1 hücresine yazmak için:
Kod:
Range("A1").value=cdate(textbox1.text)
range("A1").numberformat="dd.mm.yyyy"
 
Sn. Gizlen çok teşekkürler. Tüm problemler halloldu, sorunsuz çalışıyor.
 
Evren Bey, bu konuda farklı bir sorum daha olacak. Kopyaladığım verileri diğer dosyaya yapıştırırken formüllerde taşınıyor sadece değerleri yapıştırması için nereye ve nasıl bir ilave gerekiyor acaba ?
 
Dosyadan dosyaya veri aktaracak makro


bu konu başlığı başka bir yerde daha var herhalde buna cevap vermiştim ekli dosyayı kontrol ediniz
 

Ekli dosyalar

Evren Bey, bu konuda farklı bir sorum daha olacak. Kopyaladığım verileri diğer dosyaya yapıştırırken formüllerde taşınıyor sadece değerleri yapıştırması için nereye ve nasıl bir ilave gerekiyor acaba ?
Makro kaydet yöntemini kullanarak bu sorunuzun cevanabını bulabilrisiniz.:cool:
 
Sn. Gizlen teşekkür ederim. Makro kaydet çalıştırmayı niye düşünmediğim için kendime kızıyorum
xlPasteAll kısmını xlPasteValues olarak değiştirdim.
 
Sn. Gizlen teşekkür ederim. Makro kaydet çalıştırmayı niye düşünmediğim için kendime kızıyorum
xlPasteAll kısmını xlPasteValues olarak değiştirdim.
Özel yapıştırı seçip sadece değerleri seçseydiniz zaten otomatikman kod o şekilde olacaktı.:cool:
 
Geri
Üst