Discussion:
Fallgesteuert Auswahlliste oder fester Wert
(zu alt für eine Antwort)
Frank Knappe
2007-05-06 20:30:46 UTC
Permalink
Hallo!

Auf der Suche nach einer Loesung fuer mein Problem aus
<***@para1.rz.tu-harburg.de> bin ich schon etwas
weiter.

In einer Zelle wird festgestellt, ob das in einer Auswahlliste gewaelte
Produkt zu einer Spezialuntergruppe gehoert oder nicht. Diese Zell hat
dann den Wert Wahr oder Falsch.

Bei Wahr soll in einem anderen feld jetzt eine andere Auswahlliste
erscheinen und bei Falsch ein Wert aus einer anderen Zelle uebernommen
werden. Mein bisher bester Ansatz hat folgendes unter
Daten/Gueltigkeit/Liste fuer das betreffende feld stehen:
=WENN(B32;INDIREKT(F37);D3)

B32 ist Wahr/Falsch
D3 enthaelt den Wert, der bei einem Falsch uebernommen werden soll
F37 enthaelt den String, der aus die Liste verweist, die dort dann zur
Auswahl stehen soll

Das klappt im Prinzip auch. Bei einem falsch jedoch wird nicht der Wert
direkt uebertragen, sondern es steht dann dot eine Auswahlliste mit nur
einem (aber dem richtigen) Wert. Und ausserdem steht in dem feld zuerst
noch der Wert der letzen Ausfuehrung.

Wie erreiche ich, dass der Wert direkt uebertragen wird?
--
Ciao , Frank.
Claus Busch
2007-05-06 20:55:18 UTC
Permalink
Hallo Frank,

schau mal hier in diesen Ausschnitt aus SmartTools Excel Weekly.
Vielleicht hilft dir das bei deinem Problem:

Nun zu dem von Ihnen geschilderten Problem mit zwei verknüpften
Dropdown-Listen. Die Lösung besteht darin, anstelle von statischen
Wertelisten oder Zelladressen mit benannten Bereichen zu arbeiten. Excel
wertet Namen wie normale Tabellenbereiche aus, die Sie mit
Spaltenbuchstaben und Zeilennummern angeben. Excel geht sogar noch einen
Schritt weiter: Als Quelle einer Dropdown-Liste akzeptiert Excel auch
eine Formel, die den Namen eines benannten Bereichs zurückgibt. So ist
es nur noch ein kleiner Sprung bis zur fertigen Verknüpfung der beiden
Dropdown-Listen. Hier die Vorgehensweise im Detail:

Geben Sie die Werte ein, die in den Dropdown-Feldern erscheinen sollen.
Angenommen etwa, Sie wollten zuerst ein Land auswählen und dann in
Abhängigkeit davon eine Stadt aus dem betreffenden Land. Geben Sie dafür
zum Beispiel "Deutschland", "Frankreich" und "Italien" in die Zellen
A1:A3 eines Tabellenblatts ein. In den Bereich B1:B3 tragen Sie Orte aus
Deutschland ein - beispielsweise "Hamburg", "Berlin", "München". Ebenso
verfahren Sie mit den französischen und italienischen Städten, die Sie
in C1:C3 bzw. D1:D3 eingeben. Suchen Sie sich irgendwelche Beispielorte
aus.
Weisen Sie den einzelnen Bereichen Namen zu (Befehl
Einfügen-Namen-Festlegen (Excel 97) oder Einfügen-Name(n)-Definieren
(Excel 2000/2002/2003). Wie Sie die Liste für das erste Dropdown-Feld
benennen, ist relativ egal; geben Sie dem Bereich A1:A3 zum Beispiel den
Namen "Staaten". Wichtig ist die Namensgebung der abhängigen Bereiche!
Die Namen müssen exakt mit den vorgesehenen Listeneinträgen
übereinstimmen - hier also "Deutschland", "Frankreich" sowie "Italien".

Setzen Sie den Cursor in die Zelle, in der die erste Dropdown-Liste zur
Länderauswahl erscheinen soll. Hier könnte das beispielsweise Zelle A5
auf demselben Tabellenblatt sein.

Wählen Sie Daten-Gültigkeit an und aktivieren Sie auf der Registerkarte
Einstellungen im Feld Zulassen den Eintrag "Liste".

Geben Sie im Feld Quelle einen Bezug in der Form

=<ErsterBereichsname>

ein. Im Beispiel müssen Sie also "=Staaten" eingeben.


Achten Sie darauf, dass das Kontrollkästchen Zellendropdown aktiviert
ist und bestätigen Sie die Einstellungen mit Ok.

Setzen Sie den Cursor in die Zelle, in der das verknüpfte Dropdown-Feld
erscheinen soll; hier etwa Zelle B5.

Rufen Sie erneut Daten-Gültigkeit auf und stellen Sie wie in Schritt 4
das Listenformat ein.

Als Quelle tragen Sie jetzt aber keinen Bereichsnamen ein, sondern eine
Formel nach folgendem Muster:

=INDIREKT(<VerknüpfteZelle>)

Da sich die übergeordnete Dropdown-Liste des Beispiels in Zelle A5
befindet, müssen Sie in diesem Fall die Formel "=INDIREKT(A5)" eingeben.

Quittieren Sie die Änderungen mit Ok. Dass Excel daraufhin eine
Fehlermeldung ausgibt, muss Sie nicht stören. Grund dafür ist, dass
bislang noch kein Land ausgewählt wurde. Fahren Sie einfach mit Ja fort.

Damit haben Sie die Verknüpfung eingerichtet. Probieren Sie es aus,
indem Sie ein Land aus der Dropdown-Liste in Zelle A5 auswählen. Sobald
Sie den Cursor in B5 setzen und per Dropdown-Pfeil die zugehörige
Gültigkeitsliste öffnen, werden Sie feststellen, dass nur noch Städte
aus dem betreffenden Land auftauchen.
--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2; Office 2000 SP3
claus_busch(at)t-online.de
Frank Knappe
2007-05-06 21:31:56 UTC
Permalink
Post by Claus Busch
Hallo Frank,
schau mal hier in diesen Ausschnitt aus SmartTools Excel Weekly.
Der Text beschreibt genau, wie man zwischen Fallgesteuerte Auswahllisten
gestalten kann. Genauso habe ich es ja auch gemacht. Nur will ich ja keine
zwei auswahllisten, sondern eine Auswahlliste und einen festen Wert.

Wenn True, dann auswahlliste z.B. 1 bis 12
Wenn False, dann uebernehme Wert von irgendwo. Dieser Wert soll fest
uebertragen werden. Im Moment bekomme ich mit meiner Loesung nur eine
Auswahlliste mit genau diesem festen Wert. Das will ich anders haben.
--
Ciao , Frank.
Thomas Ramel
2007-05-07 04:52:00 UTC
Permalink
Grüezi Frank

Frank Knappe schrieb am 06.05.2007
Post by Frank Knappe
Post by Claus Busch
schau mal hier in diesen Ausschnitt aus SmartTools Excel Weekly.
Der Text beschreibt genau, wie man zwischen Fallgesteuerte Auswahllisten
gestalten kann. Genauso habe ich es ja auch gemacht. Nur will ich ja keine
zwei auswahllisten, sondern eine Auswahlliste und einen festen Wert.
Wenn True, dann auswahlliste z.B. 1 bis 12
Wenn False, dann uebernehme Wert von irgendwo. Dieser Wert soll fest
uebertragen werden. Im Moment bekomme ich mit meiner Loesung nur eine
Auswahlliste mit genau diesem festen Wert. Das will ich anders haben.
Lass mich mal rekapitulieren:

Im einen Fall willst Du eine Auswahlliste und im anderen einen fixen Wert,
der auch gleich eingetragen werden soll?

Das ist so über Daten/Gültikeit nicht machbar.
Du kannst 'nur' abhängige DropDowns erstellen aus denen Du aber zuerst noch
eine Auswahl treffen musst.

Wenn Du das Ganze automatisieren willst kommst Du um VBA nicht herum. In
deinem Falle würde sich wohl das Worksheet_Change()-Ereignis anbieten das
die Zelle in der Du die erste Auswahl triffst überwacht und im
entsprechenden Fall dann den Wert überträgt. Ev. kann dabei auch gleich die
Gültigkeit gelöscht werden um keine Konflikte bei der Eingabe zu bekommen.
Dann müsste im Falle der anderen Auswahl die Gültigkeit auch gleich wieder
gesetzt werden, was dann aber auch kein grösseres Problem mehr darstellt.


Mit freundlichen Grüssen
Thomas Ramel (@work)
--
- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2003 SP-1]
Microsoft Excel - Die ExpertenTipps tinyurl.com/cmned
Frank Knappe
2007-05-07 11:35:21 UTC
Permalink
Post by Thomas Ramel
Im einen Fall willst Du eine Auswahlliste und im anderen einen fixen Wert,
der auch gleich eingetragen werden soll?
Richtig. Andernfalls wird das Ganze nicht "idiotensicher".
Post by Thomas Ramel
Das ist so über Daten/Gültikeit nicht machbar.
Du kannst 'nur' abhängige DropDowns erstellen aus denen Du aber zuerst noch
eine Auswahl treffen musst.
Wenn Du das Ganze automatisieren willst kommst Du um VBA nicht herum. In
deinem Falle würde sich wohl das Worksheet_Change()-Ereignis anbieten das
die Zelle in der Du die erste Auswahl triffst überwacht und im
entsprechenden Fall dann den Wert überträgt. Ev. kann dabei auch gleich die
Gültigkeit gelöscht werden um keine Konflikte bei der Eingabe zu bekommen.
Dann müsste im Falle der anderen Auswahl die Gültigkeit auch gleich wieder
gesetzt werden, was dann aber auch kein grösseres Problem mehr darstellt.
VBA bedeutet dann leider auch gleich eine zeitliche Verzoegerung von
mehreren Tagen, da ich dort bei absolut Null anfange. Nun ja, daran laesst
sich ja jetzt nichts mehr aendern. Dann muss Chef mir halt die Zeit geben.
--
Ciao , Frank.
Claus Busch
2007-05-07 12:33:15 UTC
Permalink
Hallo Frank,

schau mal hier rein:
http://www.claus-busch.de/Excel/DropDown.xls
In Spalte A kannst du über Gültigkeit dein Produkt auswählen. In Spalte
B wird dann der entsprechende Wert geschrieben. Vielleicht kannst du das
ja auf deine Bedürfnisse hin anpassen.
--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2; Office 2000 SP3
claus_busch(at)t-online.de
Frank Knappe
2007-05-07 17:45:20 UTC
Permalink
Post by Claus Busch
Hallo Frank,
http://www.claus-busch.de/Excel/DropDown.xls
In Spalte A kannst du über Gültigkeit dein Produkt auswählen. In Spalte
B wird dann der entsprechende Wert geschrieben. Vielleicht kannst du das
ja auf deine Bedürfnisse hin anpassen.
Vielen Dank. Das sollte klappen, auch wenn ich hier das Problem etwas
vereinfacht darstellen musste.

Ich melde mich dann wieder mit entweder Vollzugsmeldung oder neuen
problemen.
--
Ciao , Frank.
Claus Busch
2007-05-07 18:11:30 UTC
Permalink
Hallo Frank,
Post by Frank Knappe
Vielen Dank. Das sollte klappen, auch wenn ich hier das Problem etwas
vereinfacht darstellen musste.
Gern geschehen.Es scheint also nach deinen Bedürfnissen zu
funktionieren.
Wenn das Konzept bekannt ist, sollte das Anpassen kein Problem sein.
Post by Frank Knappe
Ich melde mich dann wieder mit entweder Vollzugsmeldung oder neuen
problemen.
Kannst du jederzeit machen.
--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2; Office 2000 SP3
claus_busch(at)t-online.de
Loading...