Projektanfrage

Projektanfrage über Web Formular   per Online-Formular 
Projektanfrage über E-Mail  Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Projektanfrage per Telefon  +49 (0)151 / 164 55 914
Projektanfrage weitere Informationen  weitere Informationen 

Sie benötigen Hilfe oder Unter-stützung? Nutzen Sie für Ihre Anfrage unser Online-Formular, senden Sie uns eine Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! oder rufen Sie uns einfach an.

   
      Referenzen 

 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
   
     Programmierung
Excel Auftragsprogrammierung Access Auftragsprogrammierung
Word Auftragsprogrammierung Outlook Auftragsprogrammierung
   
   

Projektanfrage

 Sie benötigen eine Auftragsprogrammierung?
 Oder suchen Unterstützung bei der Lösungs-
 findung?

  Nutzen Sie unser Auftragsformular

  Jetzt anrufen unter 0151 / 164 55 914

 Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! Projektanfrage per Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! senden

  Weitere Informationen

sitepanel question2

P
r
o
j
e
k
t
a
n
f
r
a
g
e
   

Gültigkeitsprüfung per Optionsbutton festlegen

Normalerweise wird über die Funktion Daten / Datentools / Datenüberprüfung die Gültigkeit für eine Zelle oder einen Zellbereich individuell festgelegt. In diesem Beispiel zeigen wir Ihnen, wie sich die Gültigkeitsprüfung anwendergesteuert und dynamisch durch einen Optionsbutton verändern lässt, siehe Abbildung 1.


Abbildung 1: Gültigkeitsprüfung per Optionsbutton festlegen

Ein Klick auf den Optionsbutton "Liste A" führt dazu, dass in der Gültigkeitsprüfung die Daten aus Liste A angezeigt werden. Ein Klick auf den Optionsbutton B hingegen zeigt die Einträge aus Liste B an.

Die Daten der Liste A befinden sich auf dem Tabellenblatt "Liste_A" und die Daten der Liste B auf dem Sheet "Liste_B".

Den beiden Listen wurden dazu jeweils den Bereichsnamen "Liste_A" und "Liste_B" übergeben, siehe Abbildung 2.


Abbildung 2: Namensmanager mit der Namensvergabe für Liste A und B

Wie Sie sehen, wird über die Funktion BEREICH.VERSCHIEBEN() der Bereichsname dynamisch aufgebaut, so dass die Liste jederzeit ergänzt werden kann und die Einträge entsprechend an den Bereichsnamen übergeben werden.

Grundsätzlich stehen zwei Varianen zur Verfügung. Die erste Variante verwendet VBA zur dynamischen Anzeige der ausgewählten Liste. In der zweiten Variante wird komplett auf VBA verzichtet.

Variante 1: Verwendung von VBA

Nachdem die Namen eingerichtet sind können wir uns den VBA-Code etwas näher ansehen.

Durch einen Klick auf den jeweiligen Optionsbutton wird ein VBA-Makro ausgeführt, welches die Datenüberprüfungsfunktion so anpasst, dass jeweils der richtige Bereichsname übergeben wird.

Die VBA-Makros für die Optionsschaltflächen lauten wie folgt:

Optionsschaltfläche 1 (Liste A)

Private Sub OptionButton1_Click()
'** Optionsschaltfläche Liste A
With Range("A5:A20").Validation
  .Delete
  .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="=Liste_A"
End With
End Sub

Optionsschaltfläche (Liste B)

Private Sub OptionButton2_Click()
'** Optionsschaltfläche Liste B
With Range("A5:A20").Validation
  .Delete
  .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="=Liste_B"
End With
End Sub

Nach Aktivierung der Option "Liste B", wird der Gültigkeitsprüfung im Bereich B5 bis B20 die Datenliste "Liste B" übergeben und die Einträge aus Liste B stehen entsprechend zur Verfügung, siehe Abbildung 3.


Abbildung 3: Datengültigkeitsliste von Liste B

 

Variante 2: Verwendung von Formeln - Ohne VBA

In der zweiten Variante wird eine Lösung vorgestellt, die komplett auf VBA verzichtet. Das Anlegen der Listen A und B funktioniert genauso wie bei der VBA-Variante. Nur das Zuweisen der entsprechenden Liste wird über eine Formel gesteuert.

Gehen Sie dazu wie folgt vor:

  1. Verknüpfen Sie die beiden Comboboxen (Formularsteuerelement) mit der Zelle C6
  2. Damit wird bei Auswahl der Combobox Liste A eine 1 in C6 eingetragen und bei Auswahl von Liste B eine 2. Wenn Sie die ActiveX Optionsbutton verwenden, wird stattdessen WAHR und FALSCH in die Zellen geschrieben. Diese müssen Sie über eine geeignete Wenn-Formel nur noch in die Ziffern 1 bzw. 2 übersetzen. Z. B. so: =wenn(C6="WAHR;1;2)
  3. Markieren Sie nun im nächsten Schritt den Zellbereich, für den Sie die Gültigkeitsprüfung einrichten möchten. Im Beispiel also den Bereich A5:A20
  4. Starten Sie die Gültigkeitsprüfung über das Menü Daten / Datentools / Gültigkeitsprüfung
  5. und Erfassen Sie als Quelle folgende Formel: =WAHL($C$6;Liste_A;Liste_B), siehe Abbildung 4.


    Abbildung 4: Erfassung der Formel für die dynamische Gültigkeitsprüfung

  6. Wenn Sie nun die Datenprüfung mit einem Klick auf die Schaltfläche OK abschließen funktioniert dar Wechsel zwischen Liste A und B ebenfalls dynamisch über einen Klick auf die entsprechende Optionsschaltfläche.
  7. Die leicht modifizierte Lösung für ActiveX-Optionsschaltfläche finden Sie ebenfalls in der Beispieldatei.

Eine grundlegende Einführung zum Thema "Gültigkeitsprüfung" finden Sie unter dem folgenden Link: http://www.excel-inside.de/funktionen-a-tipps/177-verwendung-der-gueltigkeitspruefung

Die Beispieldatei in der beide Varianten noch mal gezeigt werden, können Sie über den folgenden Link herunterladen und für Ihre Zwecke modifizieren.

 

   

Relevante Artikel

  • IBAN in Excel ermitteln - Neue Funktion

    Am 01.02.2014 tritt SEPA für alle Euro-Mitgliedsstaaten endgültig in Krafft. Zu diesem Zeitpunkt müssen alle bargeldlosen Zahlungen im EURO-Raum im SEPA-Format durchgeführt werden. SEPA steht für Single...

  • Windows-Prozesse auslesen und beenden

    Per VBA lassen sich sämtliche laufenden Windows-Prozesse auslesen und gezielt beenden.  Der folgende VBA-Code liest alle Windows-Prozesse aus und trägt diese in Spalte A ab Zeile 1 nacheinander in...

  • XML Datei per VBA erzeugen

    In diesem Beispiel zeigen wir Ihnen, wie XML Dateien per VBA erzeugt werden können. Als Ausgangsdatei dient eine kleine Adressliste, die als XML-Datei abgespeichert werden soll, siehe Abbildung. Abb:...

  • Diagramm-Skalierung per VBA ändern

    Excel skaliert die Größenachse (Y-Achse) bei einem Diagramm standardmäßig automatisch. Natürlich kann der Maxi- und Min-Wert auch manuell für das Diagramm vorgegeben werden. Dieses Beispiel zeigt,...

  • UserName ermitteln

    Dieses Makro liest den UserName (Benutzernamen) des eingeloggten Benutzers aus. Dies ist für Dateien/Programme interessant, die nur für bestimmte Benutzer freigegeben werden sollen. Damit lässt sich eine...