Brauchen Sie Hilfe?
Web:     Online-Formular
E-Mail:  
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Tel:       +49(0)151 / 164 55 914

Nutzen Sie für Ihre Anfrage unser Online-Formular oder senden Sie uns eine E-Mail an Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!. Gerne können Sie aber auch direkt telefonisch Kontakt aufnehmen.

   
     Referenzen
 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
   

DropDown Liste mit Mehrfachauswahl

Sie kennen sicherlich die Möglichkeit, über sogenannte DropDown-Listen (Auswahlliste) eine Auswahl zu treffen. Eine Auswahlliste wird über das Menü Daten / Datentools / Datenüberprüfung erzeugt. Wenn Sie als Gültigkeitskriterium Liste auswählen und unter Quelle die einzelnen Auswahlmöglichkeiten durch Semikolon (;) getrennt angeben, erscheint nach Beenden des Befehls in der gewählten Zelle die entsprechende DropDown-Liste.

Alternativ kann anstatt der einzelnen Auswahlbegriffe auch eine Bezug zu einer Excel-Tabelle angegeben werden. In unserem Beispiel befinden sich die Auswahlbegriffe auf einem eigenen Tabellenblatt. Um diese Liste als mögliche Auswahlkriterien für die Datenüberprüfung festzulegen, geben Sie dieser einfach einen Namen, z. B. auswahl, siehe Abbildung 1.


Abbildung 1

Nachdem der Bereichsname für die Auswahlliste definiert ist, können wir die Gültigkeitsprüfung auf unserem Erfassungsblatt einrichten. Im Beispiel sollen für die wöchentliche Besprechung die Teilnehmer über ein DropDown-Menü ausgewählt werden.

Markieren Sie dazu den Zellbereich B4:B14 und tragen nun den Bereichsnamen auswahl als Listen-Quelle in die Datenüberprüfung als Gültigkeitskriterium ein, siehe Abbildung 2.


Abbildung 2

Damit stehen die Auswahlmöglichkeiten in den genannten Zellen per DropDown-Liste zur Verfügung.

Allerdings kann standardmäßig nur jeweils ein einziger Begriff, im Beispiel also ein einziger Teilnehmer ausgewählt werden. Sobald ein anderer Teilnehmer ausgewählt wird, wird der vorher ausgewählte wieder überschrieben und mit dem neuen ersetzt.

Um diese Problematik zu beseitigen, können Sie den nachfolgenden VBA-Code verwenden. Damit wird die Mehrfachauswahl per DropDown-Liste ermöglicht.

Erfassen Sie den VBA-Code im Code-Modul des Tabellenblatts, auf dem Sie die Funktion benötigen, da der Code die über die Change-Funktion des Arbeitsblatts aktiviert wird.

Private Sub Worksheet_Change(ByVal Target As Range)
'** Mehrfachauswahl über DropDown-Liste (Gültigkeitsprüfung)
'** Einfügen im Code-Container des betreffenden Arbeitsblattes

'** Dimensionierung der Variablen
Dim rngDV As Range
Dim wert_old As String
Dim wertnew As String

'** Errorhandling
On Error GoTo Errorhandling

'** Mehrfachauswahl im definierten Bereich (Bsp. B4:B14) durchführen
If Not Application.Intersect(Target, Range("B4:B14")) Is Nothing Then

  '**Range definieren
  Set rngDV = Target.SpecialCells(xlCellTypeAllValidation)
  If rngDV Is Nothing Then GoTo Errorhandling
  
  '** Prüfen, ob eine gültige Zelle ausgewählt wurde und Werte eintragen
  If Not Application.Intersect(Target, rngDV) Is Nothing Then
    Application.EnableEvents = False
    wertnew = Target.Value
    Application.Undo
    wertold = Target.Value
    Target.Value = wertnew
    If wertold <> "" Then
      If wertnew <> "" Then
        Target.Value = wertold & ", " & wertnew
      End If
    End If
  End If
  Application.EnableEvents = True
End If

Errorhandling:
Application.EnableEvents = True
End Sub

Wenn Sie den Code eingefügt haben, steht die Funktion der Mehrfachauswahl wie gewünscht zur Verfügung, siehe Abbildung 3.


Abbildung 3

Sie können nun beliebig viele Auswahlmöglichkeiten zu einer einzigen Zellen hinzufügen. Die einzelnen Begriffe werden mit Kommata getrennt. Wenn Sie ein anderes Trennzeichen wie Semikolon (;) oder Schrägstrich (/) verwenden möchten, so können Sie den VBA-Code in folgender Zeile einfach anpassen, siehe rotes Zeichen.

      If wertnew <> "" Then
        Target.Value = wertold & "/ " & wertnew
      End If

 

Die Beispieldatei können Sie über über den folgenden Download-Link herunterladen.

   

Relevante Artikel

  • Excel 2013: Neue Formeln und Funktionen in Excel

    Wie in jeder neuen Excel-Version gibt es auch in Excel 2013 neue Formeln und Funktionen. In diesem Beitrag stelle ich euch die aus meiner Sicht wichtigsten Formeln vor. Da die Preview-Version nur in...

  • Maximalwert mit Bedingung ermitteln

    In diesem Beispiel erfahren Sie, wie sich aus einer Liste der Maximalwert abhängig von einer Bedingungen extrahieren werden kann. Das vorliegende Beispiel zeigt eine Artikelliste mit verschiedenen...

  • dynamsiches Diagramm

    In diesem Beitrag zeigen wir Ihnen, wie sich Diagramme mit dynamischen Datenbereichenerzeugen lassen. Das bedeutet, wenn die Datenliste, also die Datenquelle für das Diagramm erweitert wird, soll die...

  • Fortlaufende Nummerierung bei ausgeblendeten Zeilen

    In diesem Beitrag habe ich bereits vor einiger Zeit einen Lösungsvorschlag für eine laufende Nummerierung bei Verwendung des Autofilters vorgestellt. Heute möchte ich Ihnen zeigen, wie Sie die fast...

  • Vor- und Zuname trennen und vertauschen

    207056 Diese Funktion vertauscht 2 Wörter innerhalb einer Zelle miteinander. Das Teilstück vor dem Leer wird hinten angestellt und umgekehrt. =TEIL(A1;FINDEN(" ";A1;1)+1;LÄNGE(A1))&" "&LINKS(A1;FINDEN("...

   

Excel-Inside auf Facebook Excel-Live News blog Excel-Inside RSS-Feed Twitter Account für Excel-Inside Mail an Excel-Inside 

Programmierung
Excel Auftragsprogrammierung Access Auftragsprogrammierung
Word Auftragsprogrammierung Outlook Auftragsprogrammierung
   
Unsere Produkte
Office Schulungen VBA, Excel, Access
E-Book Formeln und Funktionen Excel 2013