• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Numeriek ordenen

Status
Niet open voor verdere reacties.

wieter

Terugkerende gebruiker
Lid geworden
26 jun 2009
Berichten
1.128
Hallo,
Een rapportage begint altijd met een volgnummer (nodig voor selectie)
Als alle gegevens ingevuld zijn = wegschrijven
Bij onterecht wegschrijven = terughalen, maar dan is de volgorde op blad 1 naar de vaantjes.
Vandaar de knop "sorteren"
Mijn VBA kennis is zooooooooo beperkt dat ik de code niet klaarkrijg

Is er iemand die wil helpen?
Liefst van al zou ik willen dat die knop sorteren helemaal niet nodig was en dat kolom A continue oplopend gesorteerd staat
mgv Wieter
 
Hallo Wieter,

Met de macro recorder :

Code:
Sub Sorteren()
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    ActiveWorkbook.Worksheets("Blad1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Blad1").Sort.SortFields.Add Key:=Range("A7"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Blad1").Sort
        .SetRange Range("A7:O16")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub

Joske
 
Code:
Private Sub CommandButton3_Click()
    [A8:O373].Sort [A8], xlAscending
End Sub
 
Hallo

Als je de sorteercode in je wegschrijf - en terughaalcode verwerkt dan heb je helemaal geen extra knop nodig om te sorteren. ;)
Code:
Private Sub CommandButton1_Click()
    On Error Resume Next
        Do
            With Sheets("Blad2").Columns(1).Find([G5], , xlValues, xlWhole).EntireRow
                .Copy Sheets("Blad1").Cells(Rows.Count, 1).End(xlUp).Offset(1)
                .Delete
            End With
        Loop Until Err.Number > 0
    [Blad1!A8:O373].Sort [Blad1!A8]
End Sub

Private Sub CommandButton2_Click()
    On Error Resume Next
        Do
            With Sheets("Blad1").Columns(1).Find([G5], , xlValues, xlWhole).EntireRow
                .Copy Sheets("Blad2").Cells(Rows.Count, 1).End(xlUp).Offset(1)
                .Delete
            End With
        Loop Until Err.Number > 0
    [Blad2!A2:O373].Sort [Blad2!A2]
End Sub
Met vr gr
Jack
 
Laatst bewerkt:
Bedankt Joske, Rudi en Jack
Ik heb voor de oplossing van Jack gekozen, dan is de knop helemaal niet nodig.
Als gepensioneerde heb ik nog maar pas mijn eerste stappen in VBA gezet (hobby)
en dan is ervaren hulp altijd welkom
mgv Wieter
 
Hallo Wieter,

Graag gedaan.
Een goede basis voor VBA is de macrorecorder.
Doe handelingen en bekijk daarna de code.
Je kan niet alles opnemen, maar het is een prima basis.
Ook het forum hier natuurlijk.

Joske :thumb:
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan