Hallo zusammen, ich habe das Problem zum Teil sehr amateurhaft mit einer Dropdownliste gelöst. Die Lösung fand ich im Internet. Ich musste den Code für meinen Zweck anpassen, denn ich habe im Gegensatz zu der original-Datei 14 Dropdownlisten mehr , 15. Ich habe in einer Datei im Internet ein Steuerelement (Listenfeld) gefunden. Ich habe daraus 15 Kopien erstellt, und würde sie gerne anstelle meiner Dropdownlisten verwenden. Im Internet konnte ich nichts Gescheites finden. Ich würde mich über jede Hilfe freuen, danke.. In der angehängtenDatei sind die Abstände der Abteilungen zueinander regelmäßig. In der Realität sieht es ganz anders aus. Manche Abteilungen haben 26 Mitarbeiter, manch andere gerade mal 5 Mitarbeiter, aber die Anzahl der Abteilungen stimmt so.
25.06.2022, 15:20 (Dieser Beitrag wurde zuletzt bearbeitet: 25.06.2022, 15:22 von Ralf A.)
Hi,
wenn Du formatierte Tabellen und Datenschnitte verwendest, ist das alles kein Problem. Im Anhang hab ich Dir in Tabelle2 mal ein Beispiel gemacht...
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben. Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.
Ciao, Ralf
Folgende(r) 1 Nutzer sagt Danke an Ralf A für diesen Beitrag:1 Nutzer sagt Danke an Ralf A für diesen Beitrag 28 • Tommiks
folgender Code kommt in ein allgemeines Modul (also nicht in das Modul des Tabellenblatts):
Code:
Sub DropDowns_Abteilungen() Range("B5,B10,B15,B20,B25,B30,B35,B40,B45,B50,B55,B60,B65,B70,B75,B80").Areas(ActiveSheet.DropDowns(Application.Caller).ListIndex).Select End Sub
Dieses Makro weist Du dann allen Dropdowns im Blatt zu und den vorhandenen Code im Tabellenmodul löschst Du. Beachte: Dieses Makro funktioniert nicht, wenn es direkt (ohne Dropdown) gestartet wird.
26.06.2022, 10:33 (Dieser Beitrag wurde zuletzt bearbeitet: 26.06.2022, 10:41 von Ralf A.)
Hi @Kuwe,
...hier ist ja wieder das Problem, dass Du die Bereiche fest definiert hast. Das eigentliche Problem (unterschiedliche Zeilenabstände) wird somit nicht gelöst.
@Tom, es ist für mich zwar nicht nachvollziehbar, weshalb Du eine funktionierende aber einfach zu realisierende Lösung nicht willst, aber das ist ja Dein Problem. Dann musst Du eben mehr Aufwand betreiben.
Zunächst musst Du allen Zielzellen über den Namensmanager einen Namen vergeben. Also Zelle auswählen, Namen definieren. Excel schlägt dann bei Deiner Namensgebung (Abt. A) folgendes vor: Abt._A, also mit Unterstrich statt Leerzeichen. Kannst Du übernehmen.
Dann gehe ich davon aus, dass nur die Werte der Dropdowns in Spalte A geändert werden sollen. Unter diesen Voraussetzungen kannst Du diesen Code verwenden:
Code:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count = 1 And Target.Column = 1 And Left(Target.Value, 4) = "Abt." Then _ Application.Goto Reference:="Abt._" & VBA.Right(Target.Value, 1) End Sub
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben. Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.
Ciao, Ralf
Folgende(r) 1 Nutzer sagt Danke an Ralf A für diesen Beitrag:1 Nutzer sagt Danke an Ralf A für diesen Beitrag 28 • Tommiks