Microsoft Excel

Herbers Excel/VBA-Archiv

Daten/Gültigkeit via VBA | Herbers Excel-Forum


Betrifft: Daten/Gültigkeit via VBA von: chrissey
Geschrieben am: 11.12.2009 13:09:27

Hallo Leut,

folgender Sachverhalt:

Möchte über Daten/Gültigkeit die Eingabewerte für die Zelle auf

-offen
-in Bearbeitung
-erledigt

reduzieren, aber ohne dass ich diese Werte in einem bestimmten Zellbereich hinterlege. Also

Sub Makro1()

    With Selection.Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="=E3:E5"
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With
    
End Sub
Kann ich hier die Werte auch in Form einer Variablen (z.B.: a, b, c) anstelle des Zellbereichs
E3:E5 hinterlegen

Ich hoffe ich habe den Sachverhalt verständlich formuliert

Wenn nicht bitte Rückfragen.

Danke Euch schon mal, Grüße und schönes WE

Chrissey

  

Betrifft: AW: Daten/Gültigkeit via VBA von: ramses
Geschrieben am: 11.12.2009 13:14:38

Hallo

Dann trage die WErte doch einfach in das Listen-Quellenfeld der Gültigkeit ein

="offen";"in Bearbeitung";"erledigt"

Gruss Rainer


  

Betrifft: Formula1:="offen, in Bearbeitung, erledigt" '_oT von: NoNet
Geschrieben am: 11.12.2009 13:33:42

_oT


  

Betrifft: AW: Formula1:="offen, in Bearbeitung, erledigt" '_oT von: chrissey
Geschrieben am: 11.12.2009 13:44:22

Ah Ok!!! Dankeschön... Wünsch Euch ein schönes WE

Danke


  

Betrifft: mit Variable von: Rudi Maintaire
Geschrieben am: 11.12.2009 14:45:30

Hallo,

Sub Makro1()
  Dim arrVal
  arrVal = Array("offen", "in Bearbeitung", "erledigt")
  With Selection.Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
      Operator:=xlBetween, Formula1:=Join(arrVal, ",")
    .IgnoreBlank = True
    .InCellDropdown = True
    .InputTitle = ""
    .ErrorTitle = ""
    .InputMessage = ""
    .ErrorMessage = ""
    .ShowInput = True
    .ShowError = True
  End With
End Sub

Gruß
Rudi