vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Kombinierte Auswahl mit 2 ComboBoxen 
Autor: wAmBo
Datum: 10.12.18 13:23

Hallo, ich habe ein Problem.

Ich habe auf einer Userform, 2 comboBoxen.
Eine zur Auswahl für die Abteilung und eine zur Auswahl für das Büro.
Wenn ich in der Abteilungsbox die erste Abteilung aus wähle soll in Combobox 2 nur die Büros auftauchen die zur Abteilung 1 gehören. Das geht und die Listen werden auch dynamisch erzeugt.

Mein Problem ist wenn ich Abteilung 1 mit Büro 1 ausgewählt habe, soll aus einer liste (Tagesliste) aus einer Spalte (zb. Tagesliste!C9:C106) also 100 Zeilen der wert in ein anderes Tabellen Blatt (Anforderung) kopiert werden.

Dies habe ich schon mit der Funktion hier unten geschafft wenn ich nur eine Combobox zur Auswahl nutze. aber bei 250 Büros ist mir die Auswahl liste zulang. deswegen möchte ich erst die Abteilung auswählen. Quasi zum filtern.
Private Sub EinfügenI()
 
   B = ActiveSheet.Name
   zweiter = 0
   Dim d As String
 
   Sheets("Anforderung").Unprotect
 
   Select Case ComboBox1.Value
 
               Case 0
                   R = 2
                   If CheckBox1 = True Then R = R + 2: zweiter = 1
                   Call datenübertragen
                   'Abteilung und Büro einfügen
                   Range("B4").Select
                   ActiveCell.FormulaR1C1 = "I.In"
                   Range("B5").Select
                   ActiveCell.FormulaR1C1 = "11"
 
                   Call datumeinfügen
 
                   UserForm1.Hide
 
               Case 1
                   R = 4
                   If CheckBox1 = True Then R = R + 2: zweiter = 1
                   Call datenübertragen
                   Range("B4").Select
                   ActiveCell.FormulaR1C1 = "I.In"
                   Range("B5").Select
                   ActiveCell.FormulaR1C1 = "12"
 
                   Call datumeinfügen
 
                   UserForm1.Hide
 
            End Select
 
   End Sub
Mit der Funktion Select Case habe ich die Auswahl genutzt und gezielt das auslesen der spalte getroffen. Jetzt wollte ich das ineinander verschachteln, das klappt aber nicht.

Private Sub CommandButton1_Click()
 
   B = ActiveSheet.Name
   zweiter = 0
   Dim d As String
 
   Sheets("Anforderung").Unprotect
 
       If ComboBox2.Value = "" Then
           UserForm1.Hide
           UserForm2.Show
           GoTo ende:
       End If
 
   Select Case ComboBox1.Value
 
       Case 0 'Abteilung 1
 
           Call EinfügenI 'Springen zur Auswahl des Büros in Combobox2 Siehe 
           ' oben
 
       Case 1
           Call EinfügenII
 
   End Select
 
   ende:
   End Sub
___________________________________________
 
Sub EinfügenI()
 
B = ActiveSheet.Name
zweiter = 0
Dim d As String
 
Sheets("Anforderung").Unprotect
 
        Select Case ComboBox2.Value
 
            Case 0
                R = 2
                If CheckBox1 = True Then R = R + 2: zweiter = 1
                Call datenübertragen
                Range("B4").Select
                ActiveCell.FormulaR1C1 = "I.In"
                Range("B5").Select
                ActiveCell.FormulaR1C1 = "11"
 
                Call datumeinfügen
 
                UserForm1.Hide
 
           Case 1
                R = 4
                If CheckBox1 = True Then R = R + 2: zweiter = 1
                Call datenübertragen
                Range("B4").Select
                ActiveCell.FormulaR1C1 = "I.In"
                Range("B5").Select
                ActiveCell.FormulaR1C1 = "12"
 
                Call datumeinfügen
 
                UserForm1.Hide
        End Select
 
End Sub
Wäre schön wenn mir jemand helfen kann. Datei habe ich mit angehängt.
es gibt noch viele andere Funktionen die aber keine Probleme machen.

Hier die Datei
http://www.herber.de/bbs/user/125994.xlsm
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Kombinierte Auswahl mit 2 ComboBoxen 
Autor: wAmBo
Datum: 10.12.18 13:23

nochmal Kurz zum Verständnis.

Das ist eine Quartal Materialliste welche erst mit den Abteilungen befühlt (Abteilung) werden muss und diese in die Tagesliste geschrieben (VBA) wird.

Danach wird die (Tagesliste) kopiert und als Tabellenblatt mit Datum Hinzugefügt.
Dies passiert wenn man auf die Zelle K1 im Tabellenblatt "Bestand" klickt.

Im Tabellenblatt Tagesliste gibt es einen Rosa Knopf ganz oben der eine Userform auslöst um Inhalte der Tagesliste in die liste Anforderung zu kopieren.
Diese Funktion geht aber leider nicht, so wie ich es gerade für Case 0 und Case 1 im "Private Sub CommandButton1_Click()" versuche.

Im Wiederrum im "Private Sub CommandButton1_Click()" Case 2 und folgende geht das.

Ich denke also, das der Sprung von Case 0 zu Call EinfügenI nicht klappt. Obwohl im "Private Sub EinfügenI()" das gleiche steht wie im Case 2 von "Private Sub CommandButton1_Click()".

Ich hoffe das ihr mir folgen könnt.

LG Rico
P.S. Danke schon mal
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Kombinierte Auswahl mit 2 ComboBoxen 
Autor: wAmBo
Datum: 11.12.18 06:37

So, ich habe mir selber helfen können.

Private Sub EinfügenI()
 
B = ActiveSheet.Name
zweiter = 0
R = 2
 
Dim d As String
Dim I_In As String
Dim I_In1 As String
Dim I_In2 As String
Dim I_In3 As String
Dim I_In4 As String
Dim I_In5 As String
Dim I_In6 As String
Dim I_In7 As String
Dim I_In8 As String
Dim I_In9 As String
 
 
Sheets("Anforderung").Unprotect
                                    'Variablen werden befühlt
I_In = Range("Abteilung!B5")       'Abteilung
I_In1 = Range("Abteilung!C5")      'Büro 1. Feld
I_In2 = Range("Abteilung!C6")
I_In3 = Range("Abteilung!C7")
I_In4 = Range("Abteilung!C8")
I_In5 = Range("Abteilung!C9")
I_In6 = Range("Abteilung!C10")
I_In7 = Range("Abteilung!C11")
I_In8 = Range("Abteilung!C12")
I_In9 = Range("Abteilung!C13")
 
Select Case ComboBox2.Value
 
     Case I_In1
                If CheckBox1 = True Then R = R + 2: zweiter = 1
                Call datenübertragen
                'Abteilung und Büro einfügen
                Range("B4").Select
                ActiveCell.FormulaR1C1 = I_In
                Range("B5").Select
                ActiveCell.FormulaR1C1 = ComboBox2.Value
 
                Call datumeinfügen
 
                UserForm1.Hide
End Select
End Sub
Könnt Ihr gern schließen diesen Beitrag.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Kombinierte Auswahl mit 2 ComboBoxen 
Autor: janno76
Datum: 24.01.19 10:07

Hallo,

und vielen Dank für die Hilfe.

Der Fehler war viel profaner, als ich gedacht hätte.
Im Designer (WinForms) sind, beim hineinziehen des
DataGrids in den SplitContainer, alle Handler gelöscht
worden.
Ich dachte, dass passiert nur, wenn man Strg+X -> Strg+V
macht.

Das Problem hat sich auf jeden Fall gelöst.
Vielen Dank für Eure Hilfe
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel