• 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.

Macro starten na verandering in cel

Status
Niet open voor verdere reacties.

Tjakko

Gebruiker
Lid geworden
6 okt 2010
Berichten
32
Beste Forumleden,

In de bijlage heb ik een opzet van een schoonmaakrooster toegevoegd, waarbij ik graag zou willen dat indien de waarde in kolom J veranderd dat dan automatisch
dan rijen veranderen.
Ik heb totaal geen VBA kennis en ervaring, maar door op YouTube te zoeken ben ik er al wel achter gekomen hoe ik een macro moet opnemen.
De macro die in het werkblad staat doet al hetgeen wat ik wil, echter moet er dan nog wel op Ctrl+f worden gedrukt.
Wat ik graag zou willen is dat, nadat de waarde in een cel verandert van kolom J, de rijen automatisch worden gesorteerd, oftewel dat de macro dan automatisch werkt.

Ik had ook al op de forum gekeken en waarschijnlijk iets gevonden met dezelfde vraag en oplossing :
http://www.helpmij.nl/forum/showthr...aarde-in-kolom?highlight=automatisch+sorteren

Ik weet echter al niet hoe ik een macro in een module moet plakken en begrijp de rest dan ook niet goed, vandaar dat ik de vraag toch hier wil stellen.

Hopelijk kan iemand mij hier bij helpen.

Groeten Tjakko
 

Bijlagen

  • automatisch schoonmaakrooster .xlsm
    20,8 KB · Weergaven: 94
​met een knopje
 

Bijlagen

  • automatisch schoonmaakrooster .xlsm
    22,1 KB · Weergaven: 99
Beste,

Probeer eens deze code :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 And Target.Count = 1 Then
    Range("A2:J250").Select
    ActiveWorkbook.Worksheets("Blad1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Blad1").Sort.SortFields.Add Key:=Range("J3:J236") _
        , SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Blad1").Sort
        .SetRange Range("A2:J236")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("I19").Select

End If
End Sub

De macro start met een wijziging in kolom D omdat daardoor ook de waarde in kolom J wijzigt. Wel deze code koppelen aan Blad1!
 
Kan ook wel met minder code

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column = 4 And Target.Count = 1 Then Cells(2, 1).CurrentRegion.Sort [J2], , , , , , , True
End Sub
 
@VenA

Volkomen met jou eens. Maar hoe weet ik welke parameters ik niet moet invullen na CurrentRegion.Sort [J2] om juist te sorteren?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan