• DİKKAT

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

Cari Hesapların A Dan Z Ye Sıralanması

Katılım
29 Kasım 2007
Mesajlar
1,110
Excel Vers. ve Dili
excel 2007
EK'te ki çalışmanın geneli, CARİLER ve gizli olan ŞABLON sayfalarından oluşmaktadır. ŞABLON sayfasında CARİLER sayfasının B sütunundaki cari isimlerine çift tıkladığımızda isim adında cari oluşturan kodlar mevcuttur. Sizden CARİLER sayfasının B sütununa girdiğim cari isimlerinin A da Z sıralanması hususunda yardımlarınızı rica ediyorum.
 

Ekli dosyalar

Aşağıdaki kodu CARİLER sayfasının kod bölümüne aşağıdaki kodları yapıştırıp deneyiniz. B sütununda değişiklik yaptığınızda sıralama yapar:

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    Son = Cells(Rows.Count, "B").End(3).Row + 1
    If Intersect(Target, Range("B3:B" & Son)) Is Nothing Then Exit Sub
    ara = Target.Value
    ActiveWorkbook.Worksheets("CARİLER").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("CARİLER").Sort.SortFields.Add Key:=Range("B3:B" & Son) _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("CARİLER").Sort
        .SetRange Range("B2:F" & Son)
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    sat = WorksheetFunction.Match(ara, Range("B1:B" & Son), 0)
    Cells(sat, "B").Select
End Sub
 
Alternatif olsun;

C++:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Cari As Variant
    If Intersect(Target, Range("B3:B" & Rows.Count)) Is Nothing Then Exit Sub
    Cari = Target.Value
    With Range("B3:B" & Rows.Count)
        .Sort Key1:=Range("B3"), Order1:=xlAscending, Header:=xlNo
        .Find(Cari, LookAt:=xlWhole).Select
    End With
End Sub
 
Korhan Bey Cevap3 deki kodu uyguladım, isteğime cevap veriyor, fakat veri girerken dalgalanmalar oluyor. Rica etsem kontrol edebilirmisiniz lütfen.
 

Ekli dosyalar

Ekran hareketlerini kapatmayı denedim. Fakat dosyanızda olumlu sonuç alamadım.

C++:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Cari As Variant
    If Intersect(Target, Range("B4:B" & Rows.Count)) Is Nothing Then Exit Sub
    Cari = Target.Value
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    With Range("B4:B" & Cells(Rows.Count, 2).End(3).Row)
        .Sort Key1:=Range("B4"), Order1:=xlAscending, Header:=xlNo
        .Find(Cari, LookAt:=xlWhole).Select
    End With
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True
End Sub
 
Korhan Bey çok teşekkür ederim.
 
Geri
Üst