Hi,
ich habe mal eine kleine Frage! Ich habe eine ganz simple Tabelle erstellt: in spalte A sind nummern und in spalte b der dazugehörende Text!
Nun möchte z.b. in der zelle d3 ein feld haben das automatisch selektiert wenn ich dort beginne einen wert einzugeben! also wenn ich z.b. nummern von 1000-5000, dass er bei der eingabe der 1 direkt mir nur noch die werte anzeigt die in frage kommen usw… ich weiß das man mit autofilter usw selektieren kann, aber ich möchte gerne wissen ob es eine möglichkeit gibt diese funktion umzusetzen!
mfg
daniel
Hallo Daniel,
ich habe mal eine kleine Frage! Ich habe eine ganz simple
Tabelle erstellt: in spalte A sind nummern und in spalte b der
dazugehörende Text!
Nun möchte z.b. in der zelle d3 ein feld haben das automatisch
selektiert wenn ich dort beginne einen wert einzugeben! also
wenn ich z.b. nummern von 1000-5000, dass er bei der eingabe
der 1 direkt mir nur noch die werte anzeigt die in frage
kommen usw… ich weiß das man mit autofilter usw selektieren
kann, aber ich möchte gerne wissen ob es eine möglichkeit gibt
diese funktion umzusetzen!
d3 anklicken, ->Daten, ->Gültigkeit, Register „Einstellungen“, bei „Zulassen“ „Liste“ einstellen, bei „Quelle“ auf den Reduzierer klicken (oder in das Feld) und dann den Quellbereich (die entsprechende Liste in Spalte A) markieren, wenn du dazu den entsprechenden Textwert aus Spalte B haben möchtest, geht das am besten mit SVERWEIS.
Gruß
Marion
Danke das hilft mir schon weiter! ist es denn auch möglich das es einen filter gibt der die liste direkt bei der eingabe „verkleinert“? also wenn ich die 3 oder was auch immer drücke direkt selektiert?
Hallo Daniel,
Danke das hilft mir schon weiter! ist es denn auch möglich das
es einen filter gibt der die liste direkt bei der eingabe
„verkleinert“? also wenn ich die 3 oder was auch immer drücke
direkt selektiert?
Mit Standard-Excel funktioniert das Autoausfüllen nur für angrenzende Zellen und auch dann nur für Text, nicht aber für Zahlen - auch nicht, wenn die Zellen mit den Zahlen als Text formatiert wurden. In Nachbarschaft mit einem Dropdownfeld klappt das sogar nur, wenn die Liste unmittelbar über dem Dropdownfeld plaziert ist.
Das bedeutet in deinem Fall, dass das Dropdownfeld direkt, also ohne „Leerzelle“ zu der Liste, unter der Liste angeordnet sein müßte und es würde auch nur dann funktionieren, wenn diese Liste Texteinträge enthält. Aber genau dann funktioniert das „Autoausfüllen“ auch ohne Dropdownfeld.
Somit kann ich dir hier leider nicht helfen. Vielleicht kann einer von den Profis in diesem Brett
dir mit vba helfen. Ich hab da leider noch nicht die Erfahrung und wüßte im Moment auch nicht, wie ich das lösen sollte. (Würd mich aber interessieren)
Gruß
Marion
Dynamisch durch Zelleingabe Zeilen ausblenden
Somit kann ich dir hier leider nicht helfen. Vielleicht kann
einer von den Profis in diesem Brett
dir mit vba helfen.
Ich hab da leider noch nicht die Erfahrung und wüßte im Moment
auch nicht, wie ich das lösen sollte. (Würd mich aber
interessieren)
Hallo Marion, Daniel,
D3 ist ungünstig, wenn in A3 4711 steht und du in D3 eine 1 eingibst.
Ich nahm deshalb D1.
Alt+F11, Doppelklick auf Tabelle1, Code einfügen, Editor schließen.
Private Sub Worksheet\_Change(ByVal Target As Range)
If Target.Address(0, 0) "D1" Then Exit Sub
Dim Zei As Long
ActiveSheet.Rows.Hidden = False
For Zei = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If CStr(Left(Cells(Zei, 1), 1)) CStr(Range("D1").Value) Then Cells(Zei, 1).EntireRow.Hidden = True
Next Zei
End Sub
Gruß und ein
an Marion
Reinhard
Gruß
Marion
1 „Gefällt mir“
Hallo Reinhard, hallo Daniel,
ich bin beeindruckt - echt - es sieht so einfach aus *ehrfürchtigguck*
D3 ist ungünstig, wenn in A3 4711 steht und du in D3 eine 1
eingibst.
stimmt, erscheint mir auch so
Ich nahm deshalb D1.
Alt+F11, Doppelklick auf Tabelle1, Code einfügen, Editor
schließen.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) „D1“ Then Exit Sub
Dim Zei As Long
ActiveSheet.Rows.Hidden = False
'in der folgenden Zeile empfehle ich "For Zei = 2 To … "da sonst die Zelle D1 mit „verschwindet“
For Zei = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If CStr(Left(Cells(Zei, 1), 1))
CStr(Range(„D1“).Value) Then Cells(Zei, 1).EntireRow.Hidden =
True
Next Zei
End Sub
super wär auch, wenn die aktive Zelle anschließend wieder D1 ist - evtl. auch bei D1="" die vollständige Liste (vielleicht auch nicht, kenne die genaue Anforderung nicht)
im großen Ganzen auch mit der kleinen Verbesserung für den Anfangswert Zeile wirklich Klasse und deshalb Stern für Reinhard
Gruß und ein
an Marion
hej, danke für 
Lieben Gruß
Marion
Hallo Marion,
ich bin beeindruckt - echt - es sieht so einfach aus
*ehrfürchtigguck*
lass ma stecken, ich schaue ehrfürchtig zu deinen Diagrammen und sonstigem.
super wär auch, wenn die aktive Zelle anschließend wieder D1
Kann ich nicht wissen, grad durch XL2007 soll vielleicht XYT123456 ausgewählt werden *gg*
ist - evtl. auch bei D1="" die vollständige Liste (vielleicht
auch nicht, kenne die genaue Anforderung nicht)
Okay, Eingabe von nix in D1 hab ich berücksichtigt.
Private Sub Worksheet\_Change(ByVal Target As Range)
If Target.Address(0, 0) "D1" Then Exit Sub
Dim Zei As Long
ActiveSheet.Rows.Hidden = False
If Range("D1") = "" Then Exit Sub
For Zei = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If CStr(Left(Cells(Zei, 1), 1)) CStr(Range("D1").Value) Then Cells(Zei, 1).EntireRow.Hidden = True
Next Zei
End Sub
im großen Ganzen auch mit der kleinen Verbesserung für den
Anfangswert Zeile wirklich Klasse und deshalb Stern für
Lieben Gruß
Reinhard
Hallo Reinhard,
super wär auch, wenn die aktive Zelle anschließend wieder D1
Kann ich nicht wissen, grad durch XL2007 soll vielleicht
XYT123456 ausgewählt werden *gg*
ok
ist - evtl. auch bei D1="" die vollständige Liste (vielleicht
auch nicht, kenne die genaue Anforderung nicht)
Okay, Eingabe von nix in D1 hab ich berücksichtigt.
gefällt mir
Private Sub Worksheet\_Change(ByVal Target As Range)
If Target.Address(0, 0) "D1" Then Exit Sub
Dim Zei As Long
ActiveSheet.Rows.Hidden = False
If Range("D1") = "" Then Exit Sub
For Zei = 1 To Cells(Rows.Count, 1).End(xlUp).Row
For Zei = 1 To … ändern in
For Zei = 2 To … hälst du nichts?
, teste mal bitte, aber kann ja auch sein, es gibt dafür Gründe, die mir noch verborgen sind
If CStr(Left(Cells(Zei, 1), 1))
CStr(Range("D1").Value) Then Cells(Zei, 1).EntireRow.Hidden =
True
Next Zei
End Sub
im großen Ganzen auch mit der kleinen Verbesserung für den
Anfangswert Zeile wirklich Klasse und deshalb Stern für
meine Meinung unverändert 
Lieben Gruß
Marion
Hallo Marion,
For Zei = 2 To … hälst du nichts?
, teste
mal bitte, aber kann ja auch sein, es gibt dafür Gründe, die
mir noch verborgen sind
Nein, gibt da keinen Vba-Grund, war nur zu faul das zu ändern 
Du hast völlig Recht mit der 2, ansonsten ist die Titelzeile weg und auch D1 *gg*.
Lieben Gruß
Reinhard