ilkay94
Yeni Üye
- Katılım
- 27 Nis 2022
- Mesajlar
- 139
- Aldığı beğeni
- 9
- Excel V
- Office 2016 TR
Konu Sahibi
Merhaba Arkadaşlar,
Herkese hayır günler bol bereketli kazançlar olsun inşallah,
Benim sayfa5'de B sütununda Tarih bilgilerim var kodu revize ettim ancak 05.05.2022 vs gibi başında 0 olunca aramıyor,
Sadece 5.01.2022 vs olunca aratıyor benim istediğim tam yazdığım tarihi arasın ve o tarihleri getirsin,
Ayrıca mesela aylara göre rapor getirebilir miyim,
Ocak 2022 Mayıs 2022 vs gibi nasıl raporlama yapabilirim,
Yardımlarınızı rica ediyorum,
Kod aşşağıda ki gibidir;
On Error Resume Next
Dim arr As clsArray2D
Dim dizi As Variant
Dim k As Long
ListBox6.RowSource = ""
son = Sayfa5.Cells(rows.count, 1).End(xlUp).row
Dim rg As Range
Set rg = Sayfa5.Range("A1:S" & son)
ReDim dizi(rg.rows.count + 1, 19) 'rg.rows.count değeri 1 arttırılacak, fazladan satır başlık için ayrılacak
k = 1 'DİZİNİN SIFIRINCI SATIRI BAŞLIKLARA AYRILACAĞINDAN K DEĞERİ 1'DEN BAŞLAYACAK
For i = 2 To rg.rows.count
If TextBox26.Text <> "" And TextBox26.Text = rg(i, 2) Or rg(i, 2) Like "" & UCase(TextBox26.Text) & "" Then
'BAŞLIKLAR BURADA BELİRLENİYOR*******
dizi(0, 0) = "SIRA NO"
dizi(0, 1) = "TARİH"
dizi(0, 2) = "STOK KODU"
dizi(0, 3) = "PARTİ KODU"
dizi(0, 4) = "ÜRETİM"
dizi(0, 5) = "HAMDERİ ADI"
dizi(0, 6) = "İŞLENTİ"
dizi(0, 7) = "ORTALAMA KG"
dizi(0, 8) = "HAM DERİ KG FİYATI"
dizi(0, 9) = "KROM DERİ KG FİYATI"
dizi(0, 10) = "RETENAJ KODU"
dizi(0, 11) = "FİNİSAJ KODU"
dizi(0, 12) = "RENK"
dizi(0, 13) = "ADET"
dizi(0, 14) = "DESİ M2"
dizi(0, 15) = "MÜŞTERİ"
dizi(0, 16) = "FASON BİRİM $"
dizi(0, 17) = "FİNİSAJ MALİYET"
dizi(0, 18) = "AÇIKLAMA"
'*************************************************************
If dizi(k, 0) = rg(i, 1) <> "" Then
dizi(k, 0) = rg(i, 1)
dizi(k, 1) = Format(rg(i, 2), "dd.mm.yyyy")
dizi(k, 2) = rg(i, 3)
dizi(k, 3) = rg(i, 4)
dizi(k, 4) = rg(i, 5)
dizi(k, 5) = rg(i, 6)
dizi(k, 6) = rg(i, 7)
dizi(k, 7) = rg(i, 8)
dizi(k, 8) = rg(i, 9)
dizi(k, 9) = rg(i, 10)
dizi(k, 10) = rg(i, 11)
dizi(k, 11) = rg(i, 12)
dizi(k, 12) = rg(i, 13)
dizi(k, 13) = rg(i, 14)
dizi(k, 14) = rg(i, 15)
dizi(k, 15) = rg(i, 16)
dizi(k, 16) = rg(i, 17)
dizi(k, 17) = rg(i, 18)
dizi(k, 18) = rg(i, 19)
k = k + 1
End If
End If
Next i
Dim yenidizi As Variant
ReDim yenidizi(1 To k, 1 To 19)
For i = 1 To k
For j = 1 To 19
yenidizi(i, j) = dizi(i - 1, j - 1)
Next j
Next i
ListBox6.ColumnCount = 19
ListBox6.ColumnWidths = "200;300;200;200;200;200;200;200;200;200;200;200;200;200;200;200;200;200;200"
ListBox6.List = yenidizi
End Sub
Herkese hayır günler bol bereketli kazançlar olsun inşallah,
Benim sayfa5'de B sütununda Tarih bilgilerim var kodu revize ettim ancak 05.05.2022 vs gibi başında 0 olunca aramıyor,
Sadece 5.01.2022 vs olunca aratıyor benim istediğim tam yazdığım tarihi arasın ve o tarihleri getirsin,
Ayrıca mesela aylara göre rapor getirebilir miyim,
Ocak 2022 Mayıs 2022 vs gibi nasıl raporlama yapabilirim,
Yardımlarınızı rica ediyorum,
Kod aşşağıda ki gibidir;
On Error Resume Next
Dim arr As clsArray2D
Dim dizi As Variant
Dim k As Long
ListBox6.RowSource = ""
son = Sayfa5.Cells(rows.count, 1).End(xlUp).row
Dim rg As Range
Set rg = Sayfa5.Range("A1:S" & son)
ReDim dizi(rg.rows.count + 1, 19) 'rg.rows.count değeri 1 arttırılacak, fazladan satır başlık için ayrılacak
k = 1 'DİZİNİN SIFIRINCI SATIRI BAŞLIKLARA AYRILACAĞINDAN K DEĞERİ 1'DEN BAŞLAYACAK
For i = 2 To rg.rows.count
If TextBox26.Text <> "" And TextBox26.Text = rg(i, 2) Or rg(i, 2) Like "" & UCase(TextBox26.Text) & "" Then
'BAŞLIKLAR BURADA BELİRLENİYOR*******
dizi(0, 0) = "SIRA NO"
dizi(0, 1) = "TARİH"
dizi(0, 2) = "STOK KODU"
dizi(0, 3) = "PARTİ KODU"
dizi(0, 4) = "ÜRETİM"
dizi(0, 5) = "HAMDERİ ADI"
dizi(0, 6) = "İŞLENTİ"
dizi(0, 7) = "ORTALAMA KG"
dizi(0, 8) = "HAM DERİ KG FİYATI"
dizi(0, 9) = "KROM DERİ KG FİYATI"
dizi(0, 10) = "RETENAJ KODU"
dizi(0, 11) = "FİNİSAJ KODU"
dizi(0, 12) = "RENK"
dizi(0, 13) = "ADET"
dizi(0, 14) = "DESİ M2"
dizi(0, 15) = "MÜŞTERİ"
dizi(0, 16) = "FASON BİRİM $"
dizi(0, 17) = "FİNİSAJ MALİYET"
dizi(0, 18) = "AÇIKLAMA"
'*************************************************************
If dizi(k, 0) = rg(i, 1) <> "" Then
dizi(k, 0) = rg(i, 1)
dizi(k, 1) = Format(rg(i, 2), "dd.mm.yyyy")
dizi(k, 2) = rg(i, 3)
dizi(k, 3) = rg(i, 4)
dizi(k, 4) = rg(i, 5)
dizi(k, 5) = rg(i, 6)
dizi(k, 6) = rg(i, 7)
dizi(k, 7) = rg(i, 8)
dizi(k, 8) = rg(i, 9)
dizi(k, 9) = rg(i, 10)
dizi(k, 10) = rg(i, 11)
dizi(k, 11) = rg(i, 12)
dizi(k, 12) = rg(i, 13)
dizi(k, 13) = rg(i, 14)
dizi(k, 14) = rg(i, 15)
dizi(k, 15) = rg(i, 16)
dizi(k, 16) = rg(i, 17)
dizi(k, 17) = rg(i, 18)
dizi(k, 18) = rg(i, 19)
k = k + 1
End If
End If
Next i
Dim yenidizi As Variant
ReDim yenidizi(1 To k, 1 To 19)
For i = 1 To k
For j = 1 To 19
yenidizi(i, j) = dizi(i - 1, j - 1)
Next j
Next i
ListBox6.ColumnCount = 19
ListBox6.ColumnWidths = "200;300;200;200;200;200;200;200;200;200;200;200;200;200;200;200;200;200;200"
ListBox6.List = yenidizi
End Sub