DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
..............sayın mesleki göstermiş olduğunuz ilgiden dolayı çok teşekkür ediyorum.sorun galiba sizin de belirttiğiniz gibi benim ofıs 2007 kullanmam.yakınlarımda hiç ofıs2003 yok o yüzden deneme şansım pek yok.sizinde belirttiğiniz gibi umarım ve şiddetle arzularım ki diğer arkadaşlarda müsait olurlarsa bir göz atsınlar
Private Sub CommandButton1_Click() 'Sorgula
Dim HaricSayfalar() As Variant
HaricSayfalar = Array("RAPOR", "Giriş", "Liste", "Şablon")
ListBox1.Clear
If IsDate(ComboBox1) = False And ComboBox1.Text <> "Tümü" Then
MsgBox "Tarih girişinde bir hata var. Lütfen kontrol edip, düzeltiniz", vbCritical, "UYARI"
Exit Sub
End If
If ComboBox1.Text <> "Tümü" Then tarih = CDate(ComboBox1)
For Each sh In ThisWorkbook.Sheets
For i = 0 To UBound(HaricSayfalar) - 1
If HaricSayfalar(i) = sh.Name Then x = x + 1
Next i
If x = 0 Then
For i = 4 To sh.Cells(65536, 3).End(xlUp).Row
If sh.Cells(i, 2) = tarih Or ComboBox1 = "Tümü" Then
If sh.Cells(i, 3) = ComboBox2 Or ComboBox2 = "Tümü" Then
If sh.Cells(i, 4) = ComboBox3 Or ComboBox3 = "Tümü" Then
If sh.Cells(i, 5) = ComboBox4 Or ComboBox4 = "Tümü" Then
With ListBox1
.AddItem Format(sh.Cells(i, 2), "dd.mm.yyyy")
For j = 1 To 22
.List(ListBox1.ListCount - 1, j) = sh.Cells(i, j + 2)
Next j
End With
End If
End If
End If
End If
Next i
End If
x = 0
Next
End Sub
[COLOR=green]'----------------------------------------------------------[/COLOR]
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub CommandButton3_Click()
With Sheets("Rapor")
.Cells(2, 1) = "SORGU -> Tarih:" & ComboBox1 _
& ", Tarla Sahibi:" & ComboBox2 _
& ", Kime Gittiği:" & ComboBox3 _
& ", Plaka:" & ComboBox4
.Range("A4:X10000").ClearContents
.Cells(4, 2).Resize(ListBox1.ListCount, 23) = ListBox1.List
For i = 4 To .Cells(65536, 2).End(xlUp).Row
y = y + 1
.Cells(i, 1) = y
Next i
End With
End Sub
[COLOR=green]'------------------------------------------------------------[/COLOR]
Private Sub UserForm_Initialize()
Dim HaricSayfalar() As Variant
Dim sh As Object
Dim arrTarlaS() As Variant, arrKime() As Variant, arrPlaka() As Variant
Dim arrVeri() As Variant
Dim colTarlaS As New Collection, colKime As New Collection, colPlaka As New Collection
Dim Toplam As Long, y As Long
HaricSayfalar = Array("RAPOR", "Giriş", "Liste", "Şablon")
For Each sh In ThisWorkbook.Sheets
For i = 0 To UBound(HaricSayfalar) - 1
If HaricSayfalar(i) = sh.Name Then x = x + 1
Next i
If x = 0 Then: Toplam = Toplam + (sh.Cells(65536, 3).End(xlUp).Row - 3)
x = 0
Next
ReDim arrTarlaS(Toplam)
ReDim arrKime(Toplam)
ReDim arrPlaka(Toplam)
For Each sh In ThisWorkbook.Sheets
For i = 0 To UBound(HaricSayfalar) - 1
If HaricSayfalar(i) = sh.Name Then x = x + 1
Next i
If x = 0 Then
For i = 4 To sh.Cells(65536, 3).End(xlUp).Row
arrTarlaS(y) = sh.Cells(i, 3).Value
arrKime(y) = sh.Cells(i, 4).Value
arrPlaka(y) = sh.Cells(i, 5).Value
y = y + 1
Next i
End If
x = 0
Next
colTarlaS.Add "Tümü", "Tümü": colTarlaS.Add arrTarlaS(0), arrTarlaS(0)
colKime.Add "Tümü", "Tümü": colKime.Add arrKime(0), arrKime(0)
colPlaka.Add "Tümü", "Tümü": colPlaka.Add arrPlaka(0), arrPlaka(0)
For i = 0 To UBound(arrTarlaS) - 1
For Each Eleman1 In colTarlaS
If Eleman1 = arrTarlaS(i) Then: x = x + 1
Next
If x = 0 Then colTarlaS.Add arrTarlaS(i), arrTarlaS(i)
x = 0
For Each Eleman2 In colKime
If Eleman2 = arrKime(i) Then: y = y + 1
Next
If y = 0 Then colKime.Add arrKime(i), arrKime(i)
y = 0
For Each Eleman3 In colPlaka
If Eleman3 = arrPlaka(i) Then: z = z + 1
Next
If z = 0 Then colPlaka.Add arrPlaka(i), arrPlaka(i)
z = 0
Next
ComboBox1.AddItem "Tümü": ComboBox1.ListIndex = 0
For Each Eleman In colTarlaS: ComboBox2.AddItem Eleman: Next: ComboBox2.ListIndex = 0
For Each Eleman In colKime: ComboBox3.AddItem Eleman: Next: ComboBox3.ListIndex = 0
For Each Eleman In colPlaka: ComboBox4.AddItem Eleman: Next: ComboBox4.ListIndex = 0
With ListBox1
.Clear
.ColumnCount = 4
.ColumnWidths = "100;135;112;100"
End With
ReDim arrVeri(1 To Toplam, 1 To 23)
For Each sh In ThisWorkbook.Sheets
For i = 0 To UBound(HaricSayfalar) - 1
If HaricSayfalar(i) = sh.Name Then x = x + 1
Next i
If x = 0 Then
For i = 4 To sh.Cells(65536, 3).End(xlUp).Row
a = a + 1
arrVeri(a, 1) = Format(sh.Cells(i, 2), "dd.mm.yyyy")
For j = 2 To 23
arrVeri(a, j) = sh.Cells(i, j + 1)
Next j
Next i
End If
x = 0
Next
ListBox1.List = arrVeri
CommandButton2.Cancel = True
End Sub