Userform filtresi

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Herkese iyi günler dilerim.Bu Userformda süzmeyi B1 hücresine göre yapıyor.
B1 hücresinde BUGÜN() formulü var ve [xlFilterToday ] bu yüzden rapor aldığım günü süzüyor.
Ben 1 haftalık rapor almak istesem ( bugün+6 gün) olarak alabilmek için kod nasıl revize edilebilir ?

Private Sub UserForm_Initialize()
On Error Resume Next
Dim seguimiento As Long, i As Long
Dim Data() As Variant
Dim cell As Range
Sayfa7.Range("$A$1:$I$" & Sayfa7.Cells(Rows.Count, 2).End(xlUp).Row).AutoFilter Field:=2, Criteria1:= _
xlFilterToday, Operator:=xlFilterDynamic
With Me.ListBox1
.Clear
.ColumnCount = 8
.ColumnWidths = "60;100;100;100;60;60;60;100"
End With

i = 1
With Sayfa7
With .Range("B2:B" & .Cells(.Rows.Count, "B").End(xlUp).Row).SpecialCells(xlCellTypeVisible) '<--| refer to non blank cells in its column "T" (i.e. with column index 20) from row 1 to last non blank one in column "B"
seguimiento = .Count
ReDim Data(1 To seguimiento + 1, 1 To Me.ListBox1.ColumnCount) '<--| redim data array rows accordingly (while setting columns to 5)
For Each cell In .Cells
i = i + 1
With cell

Data(i, 1) = Format(.Offset(, -1), "dd.mm.yy")



Data(i, 2) = .Offset(, 1) ' etc...
Data(i, 3) = Format(.Offset(, 2), "##,##0.00 TL")
Data(i, 4) = Format(.Offset(, 3), "##,##0.00 USD")
Data(i, 5) = Format(.Offset(, 4), "##,##0.00 EUR")
Data(i, 6) = .Offset(, 5)
Data(i, 7) = Format(.Offset(, 6), "dd.mm.yy")
Data(i, 8) = .Offset(, 7)
End With
224424

Next cell

End With
End With
ListBox1.List = Data
Me.Label10.Caption = Format(CDate(Date), "dd.mm.yyyy")
End Sub
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Teşekkür ederim, çok sağolun
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Maalesef beceremedim. B1 hücresini tarih yerine hafta sayısı yaptım.
Şimdi B1 hücresindeki hafta sayısına göre ( örneğin 3 ) filtreleme için xlFilterToday, Operator:=xlFilterDynamic bu satırı nasıl değiştirmeliyim
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,616
Excel Vers. ve Dili
Microsoft 365 Tr-64
Kodlarınızdaki Sayfa7 değer atanmış bir değiken midir?
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Günaydın, hayır değil. Esasen yapmak istediğim.
Userform B1 hücresinde yazılı olan bugünün tarihine göre filtre ediyor.
Ben bir haftalık filtre yapamadığım için B1 hücresine haftasay ile örneğin bugün 3.hafta olduğu için B1 hücresinde 3 yazıyor ve (xlFilterToday) yerine ne yazmalıyım ?
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Sayfa7.Range("$A$1:$I$" & Sayfa7.Cells(Rows.Count, 2).End(xlUp).Row).AutoFilter Field:=2, Criteria1:= _
xlFilterToday, Operator:=xlFilterDynamic
Yukarıdaki koda göre B sütünunda bugün yazılı olan satırları filtre ediyor ama ben B1 hücresinde olan haftasay formülü ile girdiğim örneğin 3 rakamına göre filtre yapsın istiyorum. Ne yapabilirim.
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Çok özür dilerim meramımı anlatamadım gibi geldi de o yüzden tekrar yazıyorum.
Aşağıdaki kodda Today değilde B1 hücresine göre filtre yap nasıl derim.
224443
 

byfika

Altın Üye
Altın Üye
Katılım
15 Ağustos 2009
Mesajlar
493
Excel Vers. ve Dili
Excel Vers. ve Dili : Ofis 2007 / Tr
Merhabalar,
Örnekteki excel gibi mi istiyorsunuz?
 

Ekli dosyalar

byfika

Altın Üye
Altın Üye
Katılım
15 Ağustos 2009
Mesajlar
493
Excel Vers. ve Dili
Excel Vers. ve Dili : Ofis 2007 / Tr
Rica ederim , iyi çalışmalar...
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Merhaba, kendi dosyama kopyaladığımda böyle bir hata veriyor.
224526
 

byfika

Altın Üye
Altın Üye
Katılım
15 Ağustos 2009
Mesajlar
493
Excel Vers. ve Dili
Excel Vers. ve Dili : Ofis 2007 / Tr
Merhabalar,
resimde gördüğüm kadarıyla sizin data sayfanız excelelin verdiği sayfa ismi Sayfa2.
Hata veren satırdaki sayfa1 olan yerleri Sayfa2 yaparsanız problem çözülür...
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Evet çözülü teşekkür ederim
 

byfika

Altın Üye
Altın Üye
Katılım
15 Ağustos 2009
Mesajlar
493
Excel Vers. ve Dili
Excel Vers. ve Dili : Ofis 2007 / Tr
Rica ederim. İyi calismalar
 

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
431
Excel Vers. ve Dili
Excel 2007 Türkçe
Yalnız listeyi uzatınca şöyle bir sorun çıktı, örneğin 3. haftayı seçince 3 ve 3 ile başlayan 31,34. haftaları da veriyor.
Yani 3 seçince 3 ile başlayanlar , 4 seçince 4 ile başlayan haftalar da geliyor.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,616
Excel Vers. ve Dili
Microsoft 365 Tr-64
If sorgusunun sonundali & "*" kısmı kaldırıp dener misin.
 

byfika

Altın Üye
Altın Üye
Katılım
15 Ağustos 2009
Mesajlar
493
Excel Vers. ve Dili
Excel Vers. ve Dili : Ofis 2007 / Tr
Merhabalar;
ComboBox1_Change deki
If UCase(LCase(isim)) Like UCase(LCase(ComboBox1)) & "*" Then
kodun yerine alttaki kodu yazın.
If UCase(LCase(isim)) = UCase(LCase(ComboBox1)) Then

problem düzelecektir...
 
Üst