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

keuze menu in sorteer actie

Status
Niet open voor verdere reacties.

caffie

Gebruiker
Lid geworden
2 jan 2008
Berichten
291
Binnen visual basic heb ik nu 3 macro lopen
omdat ik 3 verschillende sorteer akties heb

Kan ik dit in 1 macro stoppen doormiddel van een soort van menu
of keuze lijstje
of is dit niet verstandig


De 3 sorteeraktie

Range("AC3:AG55").Select
Selection.Sort Key1:=Range("AD4"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal


Range("AC3:AG55").Select
Selection.Sort Key1:=Range("AG4"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal


Range("AC3:AG55").Select
Selection.Sort Key1:=Range("AC4"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal


vast bedankt voor het mee denken
 
Dat kan inderdaad met een dropdown. Zie bijlage voor een uitgewerkt voorbeeld + code.

Wigi
 

Bijlagen

goede tip


ik heb er met jou tip


het volgende van gemaakt


Select Case InputBox("Vul een getal in: 1 t/m 3" & vbCrLf & _
"" & vbCrLf & _
"1 Sorteren op tab" & vbCrLf & _
"2 Sorteren op bedrijfsnaam" & vbCrLf & _
"3 Sorteren op oplevering datum", , 1)

Case Is = 1 'Tab
skolom = "AC"
Cells(2, 3) = "Tabblad volgorde"

Case Is = 2 'Bedrijfsnaam
skolom = "AD"
Cells(2, 3) = "Bedrijfsnaam volgorde"

Case Is = 3 'OplevingsdatumKolom3
skolom = "AG"
Cells(2, 3) = "opleverings volgorde"
End Select

Range("AC3:AG55").Sort _
Key1:=Cells(4, skolom), Order1:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom, DataOption1:=xlSortNormal



bedankt
 
Graag de vraag nog op opgelost zetten, en in het vervolg ook code tags rond je code zetten.
 
Alternatief

Code:
Sub sorteer()
  j = InputBox("Sorteer op " & vbCr & vbCr & "1 Tab" & vbCr & "2 bedrijfsnaam" & vbCr & "3 oplevedatum", , 1)
        
  If InStr("123", j) > 0 Then
    Range("AC3:AG55").Sort Cells(4, 28 + j)
    Cells(2, 3) = Choose(j, "Tab", "Bedrijfsnaam", "Opleverdatum") & "volgorde"
  End If
End Sub
 
Alternatief

Code:
Sub sorteer()
  j = InputBox("Sorteer op " & vbCr & vbCr & "1 Tab" & vbCr & "2 bedrijfsnaam" & vbCr & "3 oplevedatum", , 1)
        
  If InStr("123", j) > 0 Then
    Range("AC3:AG55").Sort Cells(4, 28 + j)
    Cells(2, 3) = Choose(j, "Tab", "Bedrijfsnaam", "Opleverdatum") & "volgorde"
  End If
End Sub




Dat is ook een mooie oplossing
maar de kolom staan NIET naarst elkaar

AC
AD

AG


Maar toch bedankt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan