Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Wert in nächste Zelle eintragen Combobox

Wert in nächste Zelle eintragen Combobox
07.11.2016 11:34:16
David
Hallo.
Ich habe mir eine Excel Formular zum Zweck einer Abpackliste erstellt.
in einem Arbeitsblatt befindet sich die Datenbank der Artikel.
Das Andere Arbeitsblatt ist das Protokoll.
Nun habe ich mir im Protokoll eine Combobox eingerichtet die auf die Artikeldatenbank zugreift.
Hier kan ich mir einen Artikel heraussuchen, und bei Bestätigung mit Enter setzt er mir diesen Wert in die nächste freie Zelle der gewünschten Spalte. Soweit funktioniert alles gut. Nun wird dieses Protokoll irendwann zu lang und ich habe mir zusätzlich einen Button zum Ausblenden der bereits gefüllten Zellen erstellt. Funktioniert auch.
Mein Problem ist nun:
Wenn ich die bereits befüllten Zellen ausblende, springt das nächste freie Feld nicht mehr an. Hier wählt er nun immer Zele 1 der ausgebelndeten Zellen.
Meine Code ist folgender:
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then
Dim KLR As Long
Dim CBx As String
Application.ScreenUpdating = False
KLR = Range("B1000", Range("B1000").End(xlUp)).Row + 1
CBx = Worksheets("Protokoll").OLEObjects("ComboBox1").Object.Value
If CBx  "" Then
Range("B" & KLR).Select
Range("B" & KLR) = CBx
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
End If
CBx = Empty
Application.ScreenUpdating = True
End If
End Sub
Der Code ist warscheinlich nicht ganz perfekt, da ich mit mit vba nicht auskenne. Ich habe ihn mir aus diversen Foren selbst zusammengewürfelt.
Gibt es nicht die Möglichkeit das er die nächste freie sichtbare Zelle anwählt?
Vielen Dank für die Hilfe.
Userbild
Userbild
Userbild
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wert in nächste Zelle eintragen Combobox
07.11.2016 14:27:57
Rudi
Hallo,
wenn B lückenlos gefüllt ist:
KLR = worksheetfunction.counta(Range("B:B")) + 1
Gruß
Rudi
AW: Wert in nächste Zelle eintragen Combobox
07.11.2016 14:45:52
David
Hi Rudi,
vielen Dank für die Antwort.
Du meinst ich sollte
KLR = Range("B1000", Range("B1000").End(xlUp)).Row + 1
durch
KLR = worksheetfunction.counta(Range("B:B")) + 1
ersetzen? Leider brachte dies kein Ergebniss.
B ist nicht lückenlos gefüllt. Ich möchte die Zellen immer bei Bedarf ausblenden.
Zum besseren Verständniss habe ich eine Musterdatei beigefügt.
https://www.herber.de/bbs/user/109249.xlsm
Anzeige
AW: Wert in nächste Zelle eintragen Combobox
07.11.2016 14:57:01
David
Der Filterbutton "Einblenden" und "Ausblenden" bezieht sich in der Musterdatei auf Spalte C,
da ich noch keine Lösung hatte.
Ich habe es bisher so gemacht, da ich in Zelle B die Bezeichnung und in Zelle c die Menge Eintrage, gibt es noche eine Bezeichnung "Tag Beginn" und "Tag Ende". Hier wird als Menge nichts eingetragen.
Nun Filtere ich nach Spalte C. Alle Artikel werden ausgeblendet, übrig bleibt Tag Beginn, Tag Ende. Da nun ein Wert in einer sichtbaren Zelle eingetragen ist sucht er sich hier die Zelle, demnach nach "Tag Ende".
Anzeige
AW: Wert in nächste Zelle eintragen Combobox
07.11.2016 15:20:52
Rudi
Hallo,
KLR = Range("B:B").Find(what:="*", lookat:=xlPart, searchdirection:=xlPrevious).Row + 1
Gruß
Rudi
AW: Wert in nächste Zelle eintragen Combobox
07.11.2016 15:42:43
David
Viiiiiielen Vielen Dank :)!! so geht es. Das hätte ich nie hinbekommen. DAAAAAAANKE :)!!!!!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige