tarihe göre otomatik sıralamak

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,478
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
07-11-2024
merhaba arkadaşlar;

KASA adlı sayfamın kod bölümüne aşağıdaki kodları yazdım

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Intersect(Target, [n7:n2000]) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
Range(Cells(7, "a"), Cells(Target.Row, "n")).Select
Selection.Sort Key1:=Range("b7"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Target.Offset(1, -14).Select
End Sub

burdaki amacım sayfaya giriş yapıldığında B stünundaki tarihlere göre otomatik sıralama yapabilmesi yani girilen tarihi küçükten büyüğe göre sartırları yeniden düzenleyip A stünundaki sıralamayıda (sıra numarasını) yeniden yapması aslında kod çalışıyor ama girilen 01.01.2007 şeklindeki değeri tarih olarak algılamıyor sayı olarak algılayıp ona göre sıralama yapıyor bu yüzden mesala
03.01.2007 tarihini 11.11.2005 tarihinden önce gösteriyor b stünundaki değeri sayı olarak değilde kodun tarih olarak algılayıp sıralamayı yapabilmesi için ne yapmam lazım.
 

isfa5878

Banned
Katılım
15 Kasım 2007
Mesajlar
117
Excel Vers. ve Dili
excel 2003
merhaba...
ekteki dosyayı inceleyiniz..
kod "B" Sütununa göre ister sayı,ister kelime,isterse tarih olarak sıralar..

not..B sütununa göre A_B_C sütunlarını sıralar istenirse diğer sütunlar da eklenebilir.
 

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,478
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
07-11-2024
hocam

ilgilendiğiniz için teşekkür ederim saatlerdir denemediğim yol kalmadı neden benim dosyamda çalışmadığıı bir türlü çözemedim bu yüzden kendi dosyamı gönderiyorum. ilgilenirseniz çok sevinirim.
 

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,478
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
07-11-2024
hocam şu açıklamayıda yapayım dedim ben kodu KASA sayfasının kod bölümüne yazdım
 

isfa5878

Banned
Katılım
15 Kasım 2007
Mesajlar
117
Excel Vers. ve Dili
excel 2003
Private Sub CommandButton1_Click()
sonsatir = Range("b7").End(xlDown).Row
Range(Cells(7, 1), Cells(sonsatir, 14)).Select
Selection.Sort _
Key1:=Worksheets("KASA").Columns("b"), _
Header:=xlGuess
End Sub
şeklinde değiştirin eğer sıra no sabit kalsın isterseniz "Range(Cells(7, 2)", yapın...

B sütununu excel sayfası (HÜCRE BİÇİMLENDİR den TARİH sekmesi)
(*14/03/2001) şeklinde değiştirin
not.bilgisayar denetim masası bölgesel ayarları tarih ayırıcısı"." ise
(*14.03.2001) olabilir
B sütununu yukarda ki şekle göre yeniden düzenlemeniz gerekir.
 
Son düzenleme:

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,478
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
07-11-2024
hocam

dediklerinizin hepsini uyguladım. ama bir türlü olmadı yine tarihe göre sıralamayı yapmıyor. inanın çözemedim sorunun ne olduğunu tekrar dosyamı gönderiyorum. formda buton1 click olayının altına uyfuladım gönderdiğiniz kodu ama malesef çalışmıyor özür dileyerek tekrar rica etsem bakabilirmisiniz hocam
 

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,478
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
07-11-2024
garip bir şey var isfa hocamın gönderdiği dosyayı in dirmeye çalışınca yeniden şifre ve kullanıcı adımı girmem isteniyor kaç defa densem bile yinede aynı şifremi ve kullanıcı adımı soruyor sistem ama aynı konuda başka dosyayı indirmeye çalışırsam indirebilyorum sadece son mesajdaki sayın isfa hocamın gönderdiği dosyayı indiremiyorum sebebi nedendir anlayamıyorum kaç defa denememe rağmen indiremiyorum dosyayı sebbei ne olmuş olabilir bir bilen varmı acaba
 

isfa5878

Banned
Katılım
15 Kasım 2007
Mesajlar
117
Excel Vers. ve Dili
excel 2003
Tarih yazan textboxları sayfaya kaydeden buton ların
Altında bulunan textboxları şöyle değiştirin.
Form sayfaya tarih olarak göndermiyor..
Örneğin…..
s1.Cells(a, "b") = CLng(CDate(TextBox4.Text))
----------------------------------------------------------
tarih yazılacak textbox ların changeleri ……

Private Sub TextBox8_Change()
On Error Resume Next
Dim Metin As String
Metin = TextBox8.Text
Select Case Len(Metin)
Case 2, 5
Metin = Metin & "." ‘bilgisayar ayarlarına göre “.” Veya “/”
End Select
TextBox8.Text = Metin
End Sub

Veya


Sub TextBox8_Change() gibi tarih girilen textboxları boşaltıp
Userform ınıtalize lerin içine

TextBox8 = Format(Date, "dd/mm/yyyy")
Şeklinde yazarsak form açıldığında tarih hazır gelir




Kayıt yapan butonlara aşağıdaki gibi ekler yaparsanız kaydettikten sonra texboxları boşaltır.
.
.
.
ElseIf ComboBox4.Text = "PARA ÇEKME" Then
s1.Cells(a, "b") = TextBox8.Text
s1.Cells(a, "c") = "BANKA GİRİŞ"
s1.Cells(a, "D") = TextBox9.Text
s1.Cells(a, "E") = ComboBox4.Text
s1.Cells(a, "F") = "XXXXX"
s1.Cells(a, "G") = TextBox10.Text
s1.Cells(a, "H") = "XXXXX"
s1.Cells(a, "I") = "XXXXX"
s1.Cells(a, "j") = "XXXXX"
s1.Cells(a, "K") = TextBox11.Text
s1.Cells(a, "L") = TextBox12.Value * 1
s1.Cells(a, "N") = "=SUM(R6C12:RC[-2])-SUM(R6C13:RC[-1])"
End If
TextBox9.Text =””
TextBox8.Text=””
TextBox10.Text=””
TextBox11.Text=”” gibi





Application.Quit "aşağıdaki kodlardan önce yazılırsa Excel pencereside kapatılır…
Workbooks("LİSTE").Close Save = True “LİSTE “ adlı kitabı kitabı kaydetmeden kapatır.
Workbooks("LİSTE").Close Save = False “LİSTE “ adlı kitabı kitabı kaydedip kapatır.
Veya…
ActiveWorkbook.Close Save = True aktif kitabı kaydetmeden kapatır.
ActiveWorkbook.Close Save = False aktif kitabı kaydeder kapatır.
 

udentr2002

Altın Üye
Katılım
5 Kasım 2006
Mesajlar
1,478
Excel Vers. ve Dili
iş yerinde Office 365
evde Office 365
Altın Üyelik Bitiş Tarihi
07-11-2024
isfa hocam

Bilgisayarımda bir sorun varmış onu halledince dosyayı indirebildim. sizide çok yordum teşekkür ederim ellerinize sağlık sorunum düzeldi hocam sayenizde hakkınızı helal edin
 

isfa5878

Banned
Katılım
15 Kasım 2007
Mesajlar
117
Excel Vers. ve Dili
excel 2003
rica ederim...
yardımcı olabildimse yeterli.
 
Üst