• DİKKAT

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

ListView'de Otomatik acilan UserFormda Tarih siralamasi yanlis

Katılım
4 Temmuz 2006
Mesajlar
239
Merhaba arkadaslar
ListView'de tarih siralama hatasi var. Basliklara tiklayince tarihi dogru siraliyor fakat UserForm Activate kismina yazdigim bu kodla otomatik acilimda ListView'de 18. sutuna gore siralama yaptirmak istiyorum, bu da tarih sutunu, fakat siralamayi sadece gune gore yapiyor yani ilk iki sayiya gore.


Me.ListView1.Sorted = True
Me.ListView1.SortKey = 18
Me.ListView1.SortOrder = lvwDescending

nedeni nedir acaba?
 

Ekli dosyalar

  • Capture Tarih.JPG
    Capture Tarih.JPG
    81.5 KB · Görüntüleme: 5
Bu kodu denermisiniz.

Kod:
Private Sub ListView1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
siralamaListView ListView1, ColumnHeader
End Sub

Public Sub siralamaListView(ListViewbbb As ListView, ByVal ColumnHeader As MSComctlLib.ColumnHeader)
Index = ColumnHeader.Index
For i = 1 To ListViewbbb.ListItems.Count

If ColumnHeader.Index > 1 Then

If IsNumeric(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = True And _
Len(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = 10 And _
IsDate(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = True Then
ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text = _
Format(CDate(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = True Then
ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text = _
Format(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text, "000000000000.00")
Else

End If

Else

If IsNumeric(ListViewbbb.ListItems(i).Text) = True And _
Len(ListViewbbb.ListItems(i).Text) = 10 And _
IsDate(ListViewbbb.ListItems(i).Text) = True Then
ListViewbbb.ListItems(i).Text = _
Format(CDate(ListViewbbb.ListItems(i).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListViewbbb.ListItems(i).Text) = True Then
ListViewbbb.ListItems(i).Text = _
Format(ListViewbbb.ListItems(i).Text, "000000000000.00")
Else
End If

End If


Next i

ListViewbbb.Sorted = True
ListViewbbb.SortKey = ColumnHeader.Index - 1
If ListViewbbb.SortOrder = lvwAscending Then
ListViewbbb.SortOrder = lvwDescending
Else
ListViewbbb.SortOrder = lvwAscending
End If
ListViewbbb.Sorted = False

For i = 1 To ListViewbbb.ListItems.Count
If ColumnHeader.Index > 1 Then


If Len(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = 10 Then
If IsNumeric(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = True Then
If IsDate(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = True Then
ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text = _
Format(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text, "dd.mm.yyyy")
Ay = Mid(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text, 1, 2)
gun = Mid(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text, 4, 2)
yıl = Mid(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text, 7, 4)
ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text = ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text * 1
End If
ElseIf IsNumeric(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = True Then
ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text = ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text * 1
End If
Else
If IsNumeric(ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text) = True Then
ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text = ListViewbbb.ListItems(i).ListSubItems(ColumnHeader.Index - 1).Text * 1
End If
End If

Else


If Len(ListViewbbb.ListItems(i).Text) = 10 Then
If IsNumeric(ListViewbbb.ListItems(i).Text) = True Then
If IsDate(ListViewbbb.ListItems(i).Text) = True Then
ListViewbbb.ListItems(i).Text = _
Format(ListViewbbb.ListItems(i).Text, "dd.mm.yyyy")
Ay = Mid(ListViewbbb.ListItems(i).Text, 1, 2)
gun = Mid(ListViewbbb.ListItems(i).Text, 4, 2)
yıl = Mid(ListViewbbb.ListItems(i).Text, 7, 4)
ListViewbbb.ListItems(i).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListViewbbb.ListItems(i).Text = ListViewbbb.ListItems(i).Text * 1
End If
ElseIf IsNumeric(ListViewbbb.ListItems(i).Text) = True Then
ListViewbbb.ListItems(i).Text = ListViewbbb.ListItems(i).Text * 1
End If
Else
If IsNumeric(ListViewbbb.ListItems(i).Text) = True Then
ListViewbbb.ListItems(i).Text = ListViewbbb.ListItems(i).Text * 1
End If
End If

End If

Next i


End Sub
 
Benim list view kodunda bir hata yok sadece otomatik acilimda 18. stuna gore siralama yapmasini istiyorum , benim ListView kodum bu ;

Private Sub ListView1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
SortListView ListView1, ColumnHeader
End Sub

Public Sub SortListView(ListViewEVN As ListView, ByVal ColumnHeader As MSComctlLib.ColumnHeader)
Dim strItem As String, intMaxItemLength As Long, intCounter As Long
With ListViewEVN
.Sorted = False
.ColumnHeaders.Add , , , 0
If ColumnHeader.Index = 1 Then
strItem = .ListItems(1)
Else
strItem = .ListItems(1).SubItems(ColumnHeader.Index - 1)
End If
End With
If (ColumnHeader.Index - 1 >= 8 And ColumnHeader.Index - 1 <= 24) Then

With ListViewEVN
intMaxItemLength = 0
For intCounter = 1 To .ListItems.Count
strItem = Trim(Replace(Replace(Format(.ListItems(intCounter).SubItems(ColumnHeader.Index - 1), "0.00"), ",", ""), ".", ""))
If Len(strItem) > intMaxItemLength Then
intMaxItemLength = Len(strItem)
End If
Next
For intCounter = 1 To .ListItems.Count
strItem = Trim(Replace(Replace(Format(.ListItems(intCounter).SubItems(ColumnHeader.Index - 1), "0.00"), ",", ""), ".", ""))
.ListItems(intCounter).SubItems(.ColumnHeaders.Count - 1) = "0" & String(intMaxItemLength - Len(strItem), "0") & strItem
Next
.SortKey = .ColumnHeaders.Count - 1
End With
ElseIf IsDate(strItem) Then
With ListViewEVN
If ColumnHeader.Index = 1 Then
For intCounter = 1 To .ListItems.Count
strItem = Trim(.ListItems(intCounter))
.ListItems(intCounter).SubItems(.ColumnHeaders.Count - 1) = Format(strItem, "yyyymmddHHMMSS")
Next
Else
For intCounter = 1 To .ListItems.Count
strItem = Trim(.ListItems(intCounter).SubItems(ColumnHeader.Index - 1))
.ListItems(intCounter).SubItems(.ColumnHeaders.Count - 1) = Format(strItem, "yyyymmddHHMMSS")
Next
End If
.SortKey = .ColumnHeaders.Count - 1
End With

ElseIf IsNumeric(strItem) Then
With ListViewEVN
intMaxItemLength = 0
If ColumnHeader.Index = 1 Then
For intCounter = 1 To .ListItems.Count
strItem = Trim(Replace(Replace(Format(.ListItems(intCounter), "0.00"), ",", ""), ".", ""))
If Len(strItem) > intMaxItemLength Then
intMaxItemLength = Len(strItem)
End If
Next
For intCounter = 1 To .ListItems.Count
strItem = Trim(Replace(Replace(Format(.ListItems(intCounter), "0.00"), ",", ""), ".", ""))
.ListItems(intCounter).SubItems(.ColumnHeaders.Count - 1) = "0" & String(intMaxItemLength - Len(strItem), "0") & strItem
Next
Else
For intCounter = 1 To .ListItems.Count
strItem = Trim(Replace(Replace(Format(.ListItems(intCounter).SubItems(ColumnHeader.Index - 1), "0.00"), ",", ""), ".", ""))
If Len(strItem) > intMaxItemLength Then
intMaxItemLength = Len(strItem)
End If
Next
For intCounter = 1 To .ListItems.Count
strItem = Trim(Replace(Replace(Format(.ListItems(intCounter).SubItems(ColumnHeader.Index - 1), "0.00"), ",", ""), ".", ""))
.ListItems(intCounter).SubItems(.ColumnHeaders.Count - 1) = "0" & String(intMaxItemLength - Len(strItem), "0") & strItem
Next
End If
.SortKey = .ColumnHeaders.Count - 1
End With
Else
ListViewEVN.SortKey = ColumnHeader.Index - 1
End If

With ListViewEVN
.SortOrder = 1 - .SortOrder
.Sorted = True
.ColumnHeaders.Remove .ColumnHeaders.Count
End With
End Sub
 
kod:
not kırmızı yeri bir arttırın veya eksiltin

Kod:
Sub siralamaList()
Index = [COLOR="Red"]18[/COLOR]
For i = 1 To ListView1.ListItems.Count

If Index > 1 Then

If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True And _
Len(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = 10 And _
IsDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(CDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(ListView1.ListItems(i).ListSubItems(Index - 1).Text, "000000000000.00")
Else

End If

Else

If IsNumeric(ListView1.ListItems(i).Text) = True And _
Len(ListView1.ListItems(i).Text) = 10 And _
IsDate(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(CDate(ListView1.ListItems(i).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(ListView1.ListItems(i).Text, "000000000000.00")
Else
End If

End If


Next i

ListView1.Sorted = True
ListView1.SortKey = Index - 1
If ListView1.SortOrder = lvwAscending Then
ListView1.SortOrder = lvwDescending
Else
ListView1.SortOrder = lvwAscending
End If
ListView1.Sorted = False

For i = 1 To ListView1.ListItems.Count
If Index > 1 Then


If Len(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = 10 Then
If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
If IsDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(ListView1.ListItems(i).ListSubItems(Index - 1).Text, "dd.mm.yyyy")
Ay = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 1, 2)
gun = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 4, 2)
yıl = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 7, 4)
ListView1.ListItems(i).ListSubItems(Index - 1).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
ElseIf IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
Else
If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
End If

Else


If Len(ListView1.ListItems(i).Text) = 10 Then
If IsNumeric(ListView1.ListItems(i).Text) = True Then
If IsDate(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(ListView1.ListItems(i).Text, "dd.mm.yyyy")
Ay = Mid(ListView1.ListItems(i).Text, 1, 2)
gun = Mid(ListView1.ListItems(i).Text, 4, 2)
yıl = Mid(ListView1.ListItems(i).Text, 7, 4)
ListView1.ListItems(i).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
ElseIf IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
Else
If IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
End If

End If

Next i


End Sub
 
Maglesef calismiyor, Benim Excel 2010 , belki o yuzdendir. Benim ListView kodunda degisiklik yaplilarak 18. sutunda otamatik siralama yapilamazmi?

yada UserForm Activate koduna bu asagidaki kodlarla tarih formatinda siralama yaptirilamazmi?

Me.ListView1.Sorted = True
Me.ListView1.SortKey = 18
Me.ListView1.SortOrder = lvwDescending
 
Maglesef calismiyor, Benim Excel 2010 , belki o yuzdendir. Benim ListView kodunda degisiklik yaplilarak 18. sutunda otamatik siralama yapilamazmi?

yada UserForm Activate koduna bu asagidaki kodlarla tarih formatinda siralama yaptirilamazmi?

Me.ListView1.Sorted = True
Me.ListView1.SortKey = 18
Me.ListView1.SortOrder = lvwDescending

Bu iş baya zor bir iş bu tür sorularınızda örnek dosya ekleyin
 
göndermiş olduğunuz dosyanızdaki userforma bir adet CommandButton3 komut düğmesi ekleyin ve form açıldığında tıklayın sonucu gözlemleyin.

Kod:
Private Sub CommandButton3_Click()

Index = 19
For i = 1 To ListView1.ListItems.Count

If Index > 1 Then

If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True And _
Len(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = 10 And _
IsDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(CDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(ListView1.ListItems(i).ListSubItems(Index - 1).Text, "000000000000.00")
Else

End If

Else

If IsNumeric(ListView1.ListItems(i).Text) = True And _
Len(ListView1.ListItems(i).Text) = 10 And _
IsDate(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(CDate(ListView1.ListItems(i).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(ListView1.ListItems(i).Text, "000000000000.00")
Else
End If

End If


Next i

ListView1.Sorted = True
ListView1.SortKey = Index - 1
If ListView1.SortOrder = lvwAscending Then
ListView1.SortOrder = lvwDescending
Else
ListView1.SortOrder = lvwAscending
End If
ListView1.Sorted = False

For i = 1 To ListView1.ListItems.Count
If Index > 1 Then


If Len(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = 10 Then
If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
If IsDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(ListView1.ListItems(i).ListSubItems(Index - 1).Text, "dd.mm.yyyy")
Ay = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 1, 2)
gun = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 4, 2)
yıl = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 7, 4)
ListView1.ListItems(i).ListSubItems(Index - 1).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
ElseIf IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
Else
If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
End If

Else


If Len(ListView1.ListItems(i).Text) = 10 Then
If IsNumeric(ListView1.ListItems(i).Text) = True Then
If IsDate(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(ListView1.ListItems(i).Text, "dd.mm.yyyy")
Ay = Mid(ListView1.ListItems(i).Text, 1, 2)
gun = Mid(ListView1.ListItems(i).Text, 4, 2)
yıl = Mid(ListView1.ListItems(i).Text, 7, 4)
ListView1.ListItems(i).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
ElseIf IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
Else
If IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
End If

End If

Next i


End Sub
 
Cevap icin tesekkurler Halit3 arkadasim ama boyle dugmeye gerek yokki , zaten her basliga tiklayinca dogru siraliyor. benim amacim otomatik siralama. Senin de vaktini aliyorum ama mutlaka bir yolu olmali.
 
10 nolu mesajdaki kodu userformun kod bölümüne ekleyin ve userformun açılış kodunada bu olay yordamını ekleyince olmuyormu.

Kod:
Private Sub UserForm_Initialize()

With UserForm1.ListView1
  .ListItems.Clear
  .Gridlines = True
  .View = lvwReport
  .FullRowSelect = True
  With .ColumnHeaders
'ListviewUpdate
End With
End With
CommandButton1_Click
[COLOR="Red"]CommandButton3_Click[/COLOR]
End Sub
 
buraya eklemiş olduğunuz 9 nolu mesajdaki dosyayı açın ve userformun içindeki bütün kodları silin ve buradaki kodları ekleyin.

Kod:
Private Sub CommandButton1_Click()
ListView1.ColumnHeaders.Clear
With ListView1.ColumnHeaders
.Add , , Sheets("Rapor").Cells(1, 1), Sheets("Rapor").Range("A1").Width
.Add , , Sheets("Rapor").Cells(1, 2), Sheets("Rapor").Range("B1").Width
.Add , , Sheets("Rapor").Cells(1, 3), Sheets("Rapor").Range("C1").Width
.Add , , Sheets("Rapor").Cells(1, 4), Sheets("Rapor").Range("D1").Width
.Add , , Sheets("Rapor").Cells(1, 5), Sheets("Rapor").Range("E1").Width
.Add , , Sheets("Rapor").Cells(1, 6), Sheets("Rapor").Range("F1").Width
.Add , , Sheets("Rapor").Cells(1, 7), Sheets("Rapor").Range("G1").Width
.Add , , Sheets("Rapor").Cells(1, 8), Sheets("Rapor").Range("H1").Width
.Add , , Sheets("Rapor").Cells(1, 9), Sheets("Rapor").Range("I1").Width
.Add , , Sheets("Rapor").Cells(1, 10), Sheets("Rapor").Range("J1").Width
.Add , , Sheets("Rapor").Cells(1, 11), Sheets("Rapor").Range("K1").Width
.Add , , Sheets("Rapor").Cells(1, 12), Sheets("Rapor").Range("L1").Width
.Add , , Sheets("Rapor").Cells(1, 13), Sheets("Rapor").Range("M1").Width
.Add , , Sheets("Rapor").Cells(1, 14), Sheets("Rapor").Range("N1").Width
.Add , , Sheets("Rapor").Cells(1, 15), Sheets("Rapor").Range("O1").Width
.Add , , Sheets("Rapor").Cells(1, 16), Sheets("Rapor").Range("P1").Width
.Add , , Sheets("Rapor").Cells(1, 17), Sheets("Rapor").Range("Q1").Width
.Add , , Sheets("Rapor").Cells(1, 18), Sheets("Rapor").Range("R1").Width
.Add , , Sheets("Rapor").Cells(1, 19), Sheets("Rapor").Range("S1").Width
.Add , , Sheets("Rapor").Cells(1, 20), Sheets("Rapor").Range("T1").Width
.Add , , Sheets("Rapor").Cells(1, 21), Sheets("Rapor").Range("U1").Width
.Add , , Sheets("Rapor").Cells(1, 22), Sheets("Rapor").Range("V1").Width
.Add , , Sheets("Rapor").Cells(1, 23), Sheets("Rapor").Range("W1").Width
.Add , , Sheets("Rapor").Cells(1, 24), Sheets("Rapor").Range("X1").Width
.Add , , Sheets("Rapor").Cells(1, 25), Sheets("Rapor").Range("Y1").Width
End With
ListView1.ListItems.Clear
On Error Resume Next
        For i = 2 To [a65536].End(3).Row
        Set Liste = ListView1.ListItems.Add(, , Sheets("Rapor").Cells(i, 1).Value)
        Liste.SubItems(1) = Sheets("Rapor").Cells(i, 2).Value
        Liste.SubItems(2) = Sheets("Rapor").Cells(i, 3).Value
        Liste.SubItems(3) = Sheets("Rapor").Cells(i, 4).Value
        Liste.SubItems(4) = Sheets("Rapor").Cells(i, 5).Value
        Liste.SubItems(5) = Sheets("Rapor").Cells(i, 6).Value
        Liste.SubItems(6) = Sheets("Rapor").Cells(i, 7).Value
        Liste.SubItems(7) = Sheets("Rapor").Cells(i, 8).Value
        Liste.SubItems(8) = Sheets("Rapor").Cells(i, 9).Value
         Liste.SubItems(9) = Sheets("Rapor").Cells(i, 10).Value
           Liste.SubItems(10) = Sheets("Rapor").Cells(i, 11).Value
            Liste.SubItems(10) = ForeColor = Red
           
         Liste.SubItems(11) = Sheets("Rapor").Cells(i, 12).Value
        Liste.SubItems(8) = Format(Sheets("Rapor").Cells(i, 9).Value, "£#,##0.00")
        Liste.SubItems(9) = Format(Sheets("Rapor").Cells(i, 10).Value, "£#,##0.00")
        Liste.SubItems(10) = Format(Sheets("Rapor").Cells(i, 11).Value, "£#,##0.00")
        Liste.SubItems(11) = Format(Sheets("Rapor").Cells(i, 12).Value, "£#,##0.00")
        Liste.SubItems(12) = Format(Sheets("Rapor").Cells(i, 13).Value, "£#,##0.00")
        Liste.SubItems(13) = Format(Sheets("Rapor").Cells(i, 14).Value, "£#,##0.00")
        Liste.SubItems(14) = Format(Sheets("Rapor").Cells(i, 15).Value, "£#,##0.00")
        Liste.SubItems(15) = Format(Sheets("Rapor").Cells(i, 16).Value, "£#,##0.00")
        Liste.SubItems(16) = Format(Sheets("Rapor").Cells(i, 17).Value, "£#,##0.00")
        Liste.SubItems(17) = Sheets("Rapor").Cells(i, 18).Value
        Liste.SubItems(18) = Sheets("Rapor").Cells(i, 19).Value
        Liste.SubItems(19) = Format(Sheets("Rapor").Cells(i, 20).Value, "£#,##0.00")
        Liste.SubItems(20) = Format(Sheets("Rapor").Cells(i, 21).Value, "£#,##0.00")
        Liste.SubItems(21) = Format(Sheets("Rapor").Cells(i, 22).Value, "£#,##0.00")
        Liste.SubItems(22) = Format(Sheets("Rapor").Cells(i, 23).Value, "£#,##0.00")
        Liste.SubItems(23) = Format(Sheets("Rapor").Cells(i, 24).Value, "£#,##0.00")
        Liste.SubItems(24) = Format(Sheets("Rapor").Cells(i, 25).Value, "£#,##0.00")
        


 

    Dim lvItemScan As Integer
    For lvItemScan = 1 To ListView1.ListItems.Count
    ListView1.ListItems(lvItemScan).ForeColor = vbBlack
    ListView1.ListItems(lvItemScan).ListSubItems.Item(1).ForeColor = vbBlack
    ListView1.ListItems(lvItemScan).ListSubItems.Item(2).ForeColor = vbBlack
    ListView1.ListItems(lvItemScan).ListSubItems.Item(3).ForeColor = vbBlack
    ListView1.ListItems(lvItemScan).ListSubItems.Item(18).ForeColor = vbRed
    Next lvItemScan

    

    'Me.Post_Set.Visible = False

    

Me.ListView1.Sorted = True
Me.ListView1.SortKey = 18 ' Burada 11. kolona göre siralama yapmasini söylüyoruz
Me.ListView1.SortOrder = lvwDescending ' Burada artan ya da azalan seklinde sirala diyoruz



Next i
End Sub

Private Sub CommandButton2_Click()
Application.Visible = True
UserForm1.Hide

End Sub

Sub ListviewUpdate()
' SAYFADAKi VERiLERi LISTVIEW iÇiNE ALIR
Dim i As Integer
Application.ScreenUpdating = False
Set sh = Sheets("Rapor")
son = sh.Cells(65536, 1).End(xlUp).Row
With UserFormMulti.ListView1
.ListItems.Clear
For i = 2 To son
.ListItems.Add , , sh.Cells(i, 1)
x = x + 1
Call ListViewSutunEkle(x, i)
Next i
End With
'TextBox14.Text = Worksheets("Rapor").[a65536].End(xlUp).Row - 1 ' buraya ekleme yaptim
Set sh = Nothing
'FormatListView1
Application.ScreenUpdating = True
End Sub
Sub ListViewSutunEkle(ListElemanNo, SatirNo As Integer)
Set sh = Sheets("Rapor")
With ListView1.ListItems(ListElemanNo).ListSubItems
'LISTVIEW iÇiNDE SAHA FAZLA iSE iLAVE EDiN
.Add , , sh.Cells(SatirNo, 2)
.Add , , sh.Cells(SatirNo, 3)
.Add , , sh.Cells(SatirNo, 4)
.Add , , sh.Cells(SatirNo, 5)
.Add , , sh.Cells(SatirNo, 6)
.Add , , sh.Cells(SatirNo, 7)
.Add , , sh.Cells(SatirNo, 8)
.Add , , sh.Cells(SatirNo, 9)
.Add , , sh.Cells(SatirNo, 10)
.Add , , sh.Cells(SatirNo, 11)
.Add , , sh.Cells(SatirNo, 12)
For N = 9 To 17
.Add , , Format(Val(sh.Cells(SatirNo, N)), "£#,##0.00")  'ListView money format
Next N
.Add , , sh.Cells(SatirNo, 18)
.Add , , sh.Cells(SatirNo, 19) ' NoteDate
.Add , , Format(Val(sh.Cells(SatirNo, 20)), "£#,##0.00") 'Client ac balance
.Add , , Format(Val(sh.Cells(SatirNo, 21)), "£#,##0.00") 'Office ac balance
.Add , , Format(Val(sh.Cells(SatirNo, 22)), "£#,##0.00") 'Time balance
.Add , , Format(Val(sh.Cells(SatirNo, 23)), "£#,##0.00") 'Bill balance
.Add , , Format(Val(sh.Cells(SatirNo, 24)), "£#,##0.00") 'Disbs balance
.Add , , Format(Val(sh.Cells(SatirNo, 25)), "£#,##0.00") 'Deposit balance
.Add , , Format(Val(sh.Cells(SatirNo, 26)), "£#,##0.00") 'Disbs balance
End With
End Sub

Private Sub UserForm_Initialize()

With UserForm1.ListView1
  .ListItems.Clear
  .Gridlines = True
  .View = lvwReport
  .FullRowSelect = True
  With .ColumnHeaders
'ListviewUpdate
End With
End With
CommandButton1_Click
CommandButton3_Click
End Sub

Private Sub CommandButton3_Click()

Index = 19
For i = 1 To ListView1.ListItems.Count

If Index > 1 Then

If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True And _
Len(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = 10 And _
IsDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(CDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(ListView1.ListItems(i).ListSubItems(Index - 1).Text, "000000000000.00")
Else

End If

Else

If IsNumeric(ListView1.ListItems(i).Text) = True And _
Len(ListView1.ListItems(i).Text) = 10 And _
IsDate(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(CDate(ListView1.ListItems(i).Text), "mm/dd/yyyy")
ElseIf IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(ListView1.ListItems(i).Text, "000000000000.00")
Else
End If

End If


Next i

ListView1.Sorted = True
ListView1.SortKey = Index - 1
If ListView1.SortOrder = lvwAscending Then
ListView1.SortOrder = lvwDescending
Else
ListView1.SortOrder = lvwAscending
End If
ListView1.Sorted = False

For i = 1 To ListView1.ListItems.Count
If Index > 1 Then


If Len(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = 10 Then
If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
If IsDate(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = _
Format(ListView1.ListItems(i).ListSubItems(Index - 1).Text, "dd.mm.yyyy")
Ay = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 1, 2)
gun = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 4, 2)
yıl = Mid(ListView1.ListItems(i).ListSubItems(Index - 1).Text, 7, 4)
ListView1.ListItems(i).ListSubItems(Index - 1).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
ElseIf IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
Else
If IsNumeric(ListView1.ListItems(i).ListSubItems(Index - 1).Text) = True Then
ListView1.ListItems(i).ListSubItems(Index - 1).Text = ListView1.ListItems(i).ListSubItems(Index - 1).Text * 1
End If
End If

Else


If Len(ListView1.ListItems(i).Text) = 10 Then
If IsNumeric(ListView1.ListItems(i).Text) = True Then
If IsDate(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = _
Format(ListView1.ListItems(i).Text, "dd.mm.yyyy")
Ay = Mid(ListView1.ListItems(i).Text, 1, 2)
gun = Mid(ListView1.ListItems(i).Text, 4, 2)
yıl = Mid(ListView1.ListItems(i).Text, 7, 4)
ListView1.ListItems(i).Text = Format(gun & "." & Ay & "." & yıl, "dd.mm.yyyy")
Else
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
ElseIf IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
Else
If IsNumeric(ListView1.ListItems(i).Text) = True Then
ListView1.ListItems(i).Text = ListView1.ListItems(i).Text * 1
End If
End If

End If

Next i


End Sub
 
Geri
Üst