Registriert seit: 13.11.2014
Version(en): 2010
11.03.2015, 16:53
(Dieser Beitrag wurde zuletzt bearbeitet: 11.03.2015, 17:14 von Mike4711.)
(11.03.2015, 12:58)atilla schrieb: Hallo Mike,
schreiben geht so, aber das zurücklesen nicht. Dann müssen noch Einstellungen vorgenommen werden, damit die Textbox nur in der einen Option sichtbar ist.
Das habe ich in Deiner Datei eingearbeitet.
Zu dieser aussage von Dir:
Zitat:Zitat: ich hatte zwischendurch mal überlegt, ob es dort geht, so eine TextBox einzufügen.
Aber ich schaue da immer noch nicht so recht durch und wusste, wie es geht. Was bedeutet: "ich schau da immer noch nicht durch"? Heißt das, dass Du mit der Userform nicht arbeiten kannst, weil Du die Funktionalität nicht verstehst? Nein.....mit der Userform kann ich arbeiten, ich meinte den Code, der dahinter steckt. Was diese ganzen Zeilen usw. bedeuten, was sie machen und deshalb, bin ich auch nicht drauf gekommen, das ich das dort selber einbauen kann. Gruß Mike
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Mike, ich habe doch nicht geschrieben, dass alles raus soll: Zitat:aus dem bisherigen code entfernst Du die 3 Change-Makros und das Makro Combo_Füllen. Was die Change-Makros sind, hatte ich erklärt: Zitat:Du hast zu jeder Combobox so ein Change-Makro - oder anders gesagt, es gibt
Private Sub ComboBox1_Change() Private Sub ComboBox2_Change() Private Sub ComboBox3_Change() Jedes Makro hört mit End Sub auf. Du musst also z.B. den code von Private Sub ComboBox1_Change()bis zum ersten danach folgenden End Subentfernen. Gleiches dann für die beiden anderen Change-Makros. Private Sub ComboBox2_Change()bis zum ersten danach folgenden End Subentfernen. Private Sub ComboBox3_Change()bis zum ersten danach folgenden End Subentfernen. Beim Makro Sub combo_füllen()auch wieder den code entfernen bis zum nächsten End SubDann fügst Du meine codes ein.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• Mike4711
Registriert seit: 13.11.2014
Version(en): 2010
Hallo Andre, ok, also da dürfte nur das alles im Code stehen? Code: Option Explicit Private Sub UserForm_Activate() Dim i As Integer, lngz As Long Dim arr1 As Variant Dim D1 As Object, D2 As Object, D3 As Object Set D1 = CreateObject("Scripting.Dictionary") Set D2 = CreateObject("Scripting.Dictionary") Set D3 = CreateObject("Scripting.Dictionary") With Sheets("Bestellübersicht") lngz = .Cells(.Rows.Count, 1).End(xlUp).Row arr1 = .Range("A2:E" & lngz) D1("bitte wählen") = "bitte wählen" D2("bitte wählen") = "bitte wählen" D3("bitte wählen") = "bitte wählen" For i = 2 To UBound(arr1) D1(CStr(RTrim(arr1(i, 1)))) = 0 D2(arr1(i, 5)) = 0 D3(arr1(i, 2)) = 0 Next i End With
If D1.Count > 0 Then Me.ComboBox1.List = Application.Transpose(D1.Keys) Me.ComboBox1.ListIndex = 0 Me.ComboBox1.SelLength = Len(Me.ComboBox1.Text) boVar = True Me.ComboBox2.List = Application.Transpose(D2.Keys) Me.ComboBox2.ListIndex = 0 Me.ComboBox2.SelLength = Len(Me.ComboBox2.Text) boVar = False Me.ComboBox3.List = Application.Transpose(D3.Keys) Me.ComboBox3.ListIndex = 0 Me.ComboBox3.SelLength = Len(Me.ComboBox3.Text) boVar = False End If End Sub
Sub combo1_füllen() Dim i As Integer, lngz As Long Dim arr1 As Variant Dim D1 As Object, D2 As Object, D3 As Object Set D1 = CreateObject("Scripting.Dictionary") Set D2 = CreateObject("Scripting.Dictionary") Set D3 = CreateObject("Scripting.Dictionary") With Sheets("Bestellübersicht") lngz = .Cells(.Rows.Count, 1).End(xlUp).Row arr1 = .Range("A2:E" & lngz) D1("bitte wählen") = "bitte wählen" D2("bitte wählen") = "bitte wählen" D3("bitte wählen") = "bitte wählen" For i = 2 To UBound(arr1) If arr1(i, 5) = Me.ComboBox2.Text Then D1(CStr(RTrim(arr1(i, 1)))) = 0 End If Next i End With
If D1.Count > 0 Then Me.ComboBox1.List = Application.Transpose(D1.Keys) Me.ComboBox1.ListIndex = 0 Me.ComboBox1.SelLength = Len(Me.ComboBox1.Text) boVar = True End If End Sub
Sub combo3_füllen() Dim i As Integer, lngz As Long Dim arr1 As Variant Dim D1 As Object, D2 As Object, D3 As Object Set D1 = CreateObject("Scripting.Dictionary") Set D2 = CreateObject("Scripting.Dictionary") Set D3 = CreateObject("Scripting.Dictionary") With Sheets("Bestellübersicht") lngz = .Cells(.Rows.Count, 1).End(xlUp).Row arr1 = .Range("A2:E" & lngz) D1("bitte wählen") = "bitte wählen" D2("bitte wählen") = "bitte wählen" D3("bitte wählen") = "bitte wählen" For i = 2 To UBound(arr1) If arr1(i, 1) = Me.ComboBox1.Text And arr1(i, 5) = Me.ComboBox2.Text Then D1(CStr(RTrim(arr1(i, 2)))) = 0 End If Next i End With
If D1.Count > 0 Then Me.ComboBox3.List = Application.Transpose(D1.Keys) Me.ComboBox3.ListIndex = 0 Me.ComboBox3.SelLength = Len(Me.ComboBox1.Text) boVar = True End If End Sub
Private Sub CommandButton2_Click() Unload Me End Sub
ist das richtig so? Hast du hier den Beitrag von Atilla gesehen, das ich in der Form, "frmLieferungen" eine zusätzliche TextBox ein geben kann und dort meine Bemerkungen speichern kann? Das habe ich gemacht und meine Maske etwas abgeändert, in der ich nach dem Artikelstatus suchen (anzeigen)möchte. Also werden über die Form Lieferungen suchen/buchen, die Bemerkungen geschrieben und abgespeichert. Jetzt brauche ich nur noch einen einfachen Aufruf aus der Maske, die ich etwas abgeändert habe, zum suchen nach Bestellnummer und Artikelnummer, das er mir zu dem Artikel den gespeicherten Lieferstatus anzeigt Sie das neue Bild, das ich nach Atillas Beitrag von der Maske hier rein gesetzt habe. Grüße Mike
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Mike, Ja, die anderen Beiträge hab ich auch gelesen. Ich wollte nur noch ein paar Tipps zu meinen Ansätzen geben.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• Mike4711
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo Mike, ich verstehe immer noch nicht, was Du mit dieser Art von Suche erreichen möchtest. Wenn Du nach einer Artikelnummer suchst, kann es doch mehrere Treffer geben. Siehe Beispiel:
Welcher soll Dir denn angezeigt werden? Und diese Suche hast Du mit der frmLieferungen. Dort werden Dir die Treffer in einer Listbox angezeigt, aus der Du dann eine genau Auswahl treffen kannst. @Andre Das alle Comboboxen zu Beginn gefüllt werden hatte in der oben beschriebenen Userform seinen Sinn. Dort kann Mike nach allen drei Comboboxen eine Vorauswahl treffen. Wenn eine Auswahl in einer der Combos getätigt wurde, dann werden die anderen erneut bedingt nach dieser Auswahl gefüllt.
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28
• Mike4711
Registriert seit: 13.11.2014
Version(en): 2010
(11.03.2015, 22:31)schauan schrieb: Hallo Mike, Ja, die anderen Beiträge hab ich auch gelesen. Ich wollte nur noch ein paar Tipps zu meinen Ansätzen geben. Hallo Andre, Ok....da Atilla in meiner Mappe, die Option das abspeichern des Lieferstatus (also Bemerkungen), schon für mich eingearbeitet hat, brauche ich jetzt nur noch eine schnelle Suche nach einem Artikel zu einer bestimmten Bestellnummer, wo mir der Lieferstatus angezeigt wird. Hier noch einmal ein Bild der Maske, wo ich denke, das die dort angesetzten Objekte zum anzeigen reichen?!
Grüße Mike
Registriert seit: 13.11.2014
Version(en): 2010
11.03.2015, 22:48
(Dieser Beitrag wurde zuletzt bearbeitet: 11.03.2015, 22:53 von Mike4711.)
Hallo Atilla, Also die Maske, habe ich für eine schnellsuche gedacht. Und das meine Kollegin, die sich nicht mit Excel oder auch mit Pivottabellen auskennt, schnell nach einem bestellten Artikel suchen kann. Hierbei denke ich nach einem noch nicht gelieferten Artikel. In der Pivottabelle wir der doch als "noch offen" angezeigt. Die vollständig gelieferten und Teillieferungen, werden auch nicht in der Pivottabelle angezeigt. In der Suchmaske für den Lieferstatus, soll er nur die noch zu liefernden Artikel berücksichtigen. Den Status kann ich ja jetzt dank dir in der Userform "Lieferung suchen/ändern" eingeben.
Im Grunde ist diese Maske eine abgespeckte Version, der Form "Lieferung suchen/ändern " Nur schneller und einfacher zu handhaben für meine Kollegin. Gruß Mike
Registriert seit: 13.11.2014
Version(en): 2010
12.03.2015, 23:29
(Dieser Beitrag wurde zuletzt bearbeitet: 12.03.2015, 23:30 von Mike4711.)
Hallo Andre, habe jetzt noch ein paar Stunden lang ausgetüfftelt, wie ich deine Codes mit der Maske am laufen bekomme. Die 3 Combobxen werden jetzt gefüllt. Anbei wieder meine Mappe.
Einkauf-Test.xlsm (Größe: 996,36 KB / Downloads: 6)
So wie es aussieht, zeigt er zu dem Lieferanten die richtigen Bestellnummern an sowie auch die richtigen Artikel. Was nur noch nicht geht, ist das ich wenn ich den Lieferanten oder die Bestellnummer wechsle es nicht mehr zueinanader passt. Kannst du mir weiter helfen? Schön wäre es, wenn ich einfach eine Artikelnummer eingeben könnte und er aktullisiert die anderen Boxen automatisch? Grüße Mike
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Mike,
ich schaue mir das morgen mal an. Wie gesagt, meine "Philosophie" war, die Daten der Reihe nach auszuwählen, also erst die linke obere Box, dann die rechte, und dann die untere. Ich hatte nur nicht den Anfang verändert, wo erst mal alle Boxen gefüllt wurden. Ich hätte hier noch die entsprechenden Zeilen im Userform_Activate raus nehmen können / sollen, damit man nicht auf andere Gedanken kommt :32: ...
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 13.11.2014
Version(en): 2010
12.03.2015, 23:47
(Dieser Beitrag wurde zuletzt bearbeitet: 12.03.2015, 23:49 von Mike4711.)
Hallo Andre,
achso. ;)
Ich sitze scho ein paar Stunden dran, um das so hin bekommen zu haben, wie du beschrieben hast.
Am einfachsten für mich und meine Kollegin wäre..... Artikel .....Lieferstatus wird angezeigt.
Heute habe ich eh kein Bock mehr. :)
Dann würd ich sagen bis morgen?
Grüße Mike
|