Textbox tarih formatı-Listboxta tarihe göre süzme

Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
Arkadaşlar merhabalar

Listboxtan textbox'a veri alırken tarih formatını düzenleyememe ve listboxta iki tarih arası süzme ile ilgili sıkıntım için yardımlarınızı rica eder hepinize iyi çalışmalar dilerim.
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,239
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Bence sorularınızı maddeler halinde sıralamayın.Her seferinde 1 soru sorarsanız belkide cevap alma olasılığınız artacaktır.Belkide cevap vermek isteyenler vardır ama 3 maddeyi birden çözmek istemiyorlardır.Birde o şekilde deneyin isterseniz.:cool:
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,482
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Kendi kodlarınızı aşağıdaki koldar ile değiştirip denermisiniz. Sadece aşağıdaki vermiş olduğum kodları değiştirin. Diğerleri aynı kalabilir.

Ayrıca Tarsuz1 ve Tarsuz2 objelerine ait Change kodlarınıda silin.

Kod:
Private Sub Guncelle_Click()
    If ALAN02 = "" Then Exit Sub
    Sor = MsgBox("Değiştirmek istediğinizden eminmisiniz?", vbYesNo)
    If Sor = vbNo Then Exit Sub
    Set SonSat = Sheets("VERI").Range("A:A").Find(Liste.Column(0), LookAt:=xlWhole)
    If Not SonSat Is Nothing Then
    SonSat = SonSat + 1
    Liste.RowSource = Empty
    Cells(SonSat, 2) = CDate(ALAN01)
    Cells(SonSat, 3) = ALAN02
    Cells(SonSat, 4) = ALAN03
    Cells(SonSat, 5) = ALAN04
    If ALAN05 = Empty Then
    Cells(SonSat, 6) = Empty
    Else
    Cells(SonSat, 6) = CDbl(ALAN05)
    End If
    If ALAN06 = Empty Then
    Cells(SonSat, 7) = Empty
    Else
    Cells(SonSat, 7) = CDbl(ALAN06)
    End If
    Liste.RowSource = "a2:g" & [a65536].End(3).Row
    Call Sirala
    ActiveWorkbook.Save
    MsgBox "DEĞİŞİKLİK YAPILMIŞTIR"
    ALAN01 = ""
    ALAN02 = ""
    ALAN03 = ""
    ALAN04 = ""
    ALAN05 = ""
    ALAN06 = ""
    ALAN01.SetFocus
    End If
End Sub
Kod:
Private Sub Tarsuz1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Tarsuz1 = Format(Tarsuz1, "dd.mm.yy")
End Sub
 
Private Sub Tarsuz2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Tarsuz2 = Format(Tarsuz2, "dd.mm.yy")
End Sub
Kod:
Private Sub Liste_Click()
    ALAN01 = Format(Liste.Column(1), "dd.mm.yyyy")
    ALAN02 = Liste.Column(2)
    ALAN03 = Liste.Column(3)
    ALAN04 = Liste.Column(4)
    ALAN05 = Liste.Column(5)
    ALAN06 = Liste.Column(6)
 
    Range("a1:h" & [a65536].End(3).Row).Interior.ColorIndex = 0
    sat = Liste.ListIndex + 2
    Range("a" & sat & ":h" & sat).Interior.ColorIndex = 0
End Sub
Kod:
Private Sub CommandButton2_Click()
    If Tarsuz1 = Empty Then
    MsgBox "Lütfen ilk tarihi giriniz !", vbCritical, "Dikkat !"
    Tarsuz1.SetFocus
    Exit Sub: End If
 
    If Tarsuz2 = Empty Then
    MsgBox "Lütfen son tarihi giriniz !", vbCritical, "Dikkat !"
    Tarsuz2.SetFocus
    Exit Sub: End If
 
    Liste.RowSource = Empty
 
    ReDim VERİ(1 To 8, 1 To 1)
 
    Sütun = 0
 
    For X = 2 To Cells(65536, "A").End(3).Row
        If Cells(X, 2) >= CDate(Tarsuz1) And Cells(X, 2) <= CDate(Tarsuz2) Then
        Sütun = Sütun + 1
        ReDim Preserve VERİ(1 To 8, 1 To Sütun)
            For Y = 2 To 9
            If Y = 3 Then
            VERİ(Y - 1, Sütun) = Format(Cells(X, Y - 1), "dd.mm.yyyy")
            ElseIf Y >= 6 Then
            VERİ(Y - 1, Sütun) = Format(Cells(X, Y - 1), "#,##0.00")
            Else
            VERİ(Y - 1, Sütun) = Cells(X, Y - 1)
            End If
            Next
        End If
    Next
    Liste.Column = VERİ
End Sub
 
Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
Merhabalar Korhan Bey

Evren hocamın tavsiyesi doğrultusunda soruları ayrıştırıp yeniden soracaktım. Ancak meslekten dolayı bugünler biraz yoğun olduğu için ertelemiştim. Bu sebepten yanıtınızı da geç farkettim. Özür diliyorum. Cevaplarınız için de teşekkür ediyorum. Kodlar çok sağlıklı çalışıyor.

İyi çalışmalar dilerim.
 
Üst