Clever-Excel-Forum

Normale Version: Makro Auswahl
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Leute,

ich habe hier ein Worksheet. Es gibt ein Eingabefeld in dem die Werte 1-6 stehen können.
Je nach dem welcher Wert in dem Feld steht soll eines von 6 unterschiedlichen Makros ausgeführt werden.

Wie kann man das realisieren?
Moin!
Nutze das Worksheet_Change().
überprüfe den .Value des Target mittels Select Case
und rufe die Makros mittels Call auf.
Sinnvollerweise beschränkst Du die Auswahl in der Zelle mittels Datengültigkeit.

(ich habe mir mit meiner Antwort ähnlich viel (eher mehr) Mühe gegeben wie Du mit Deiner Anfrage)

(und habe sogar einen Gruß "übrig")
Gruß Ralf
Wenn die Makronamen ein Ziffer (1 - 6) enthalten (snb_1, snb_2, snb_3, usw.) wird alles einfacher:


Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  cancel=true
  application.run  "snb_" & target
End Sub
Code:
Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address(0, 0) = "A1" Then


        Select Case Target.Value


            Case Is = 1: Call Makro1


            Case Is = 2: Call Makro2


            Case Is = 3: Call Makro3


            Case Is = 4: Call Makro4


            Case Is = 5: Call Makro5


            Case Is = 6: Call Makro6


            Case Else: MsgBox "Wert ungültig!", , "Info"


        End Select


    End If

End Sub

Vielen, vielen Dank :)

Das hier hat problemlos funktioniert:
Ich bevorzüge:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$1" Then
     Select Case Target.Value
     Case 1
       Makro1
     Case 2
       Makro2
     ...
     End Select
   end If
End Sub