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

Forumthread: Autocomplete aus anderem Tabellenblatt

Autocomplete aus anderem Tabellenblatt
19.01.2018 16:34:47
Frank
Hallo liebes Forum,
ich habe folgendes Problem und finde keine einfache Lösung zu. Auch Youtube Videos helfen nicht, da sie nur ähnliche Probleme behandeln und ich mit meinen geringen Kenntnissen leider nicht folgen kann.
Ich habe ein Tabellenblatt mit Namen/Artikeln, das als Datenbank dient.
In einem anderen Tabellenblatt möchte ich in einer Zelle beim Eintippen eines Buchstaben, oder sagen wir ab drei Buchstaben, per DropDown, Autovervollständigungsvorschläge aus der Datenbank, unabhängig von der Position der eingegebenen Buchstabenkombination. Die Eingabe kann also auch aus der Mitte des Wortes sein und soll mir dennoch vorgeschlagen werden.
Die Zelle dient dann als Bezug für nebenstehende Zellen, die über sverweis ausgefüllt werden (das hab ich schon geschafft irgendwo abzuschreiben).
Problem ist eben, die erste Zelle auszufüllen ohne groß suchen zu müssen, denn aktuell habe ich da nur eine normale DropDown Liste bei der ich mir einen Wolf scrolle. Die Datenbank hat bereits über 300 Einträge und es werden immer mehr...
Hoffe ich konnte mein Problem verständlich genug beschreiben und freue mich über Lösungsvorschläge.
Viele Grüße
Frank
Anzeige

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autocomplete aus anderem Tabellenblatt
19.01.2018 18:56:55
onur
Eine Zelle hat zwar ein Change-Ereignis, es wird aber nur ausgelöst, sobald du Enter drückst (bzw Tab oder Klick auf andere Zelle).
Man kann bei der Zelle nicht einen Tastendruck abfragen (bestimmte Tasten kann man zwar programmieren, aber nicht alle).
Mit Userform geht es allerdings.
https://www.herber.de/bbs/user/119109.xlsm
Anzeige
noch eine kleine Korrektur
19.01.2018 19:44:10
KlausF
Hallo Frank,
ich hatte übersehen, dass Du ja auch aus der Mitte des Wortes suchen wolltest:
https://www.herber.de/bbs/user/119112.xls
Gruß
Klaus
Anzeige
AW: noch eine kleine Korrektur
20.01.2018 23:00:12
Frank
Vielen Dank für die schnellen Antworten.
Beide führen über einen kleinen Umweg zum gewünschten Ergebnis.
Schöner wäre natürlich, wenn unterhalb der jeweiligen Zelle eine DropDown Liste auf geht.
Folgefragen wären also, ist das das machbar? Und wie bekommt der Laie das in seine Datei?
Viele Grüße
Frank
Anzeige
AW: noch eine kleine Korrektur
21.01.2018 15:32:14
Frank
Nochmal danke für die schnelle Hilfe.
https://www.herber.de/bbs/user/119139.xlsx
Tabellenblatt "Datenbank" soll die gesamte Spalte 1 der Auswahlbereich sein.
Tabellenblätter 1-7 soll (nur) die Spalte 1 in jeder Zelle die Funktion haben, die Du in den gelben Bereich eingefügt hast.
Wenn ich eins der Tabellenblätter kopiere, bleiben die Funktionen erhalten? oder anders gefragt - welche Bereiche darf ich dann nicht mehr verändern?
Und rein der Neugierde halber, wo hast du die Funktion eingefügt bzw. welcher Bereich von Excel ist das?
Anzeige
AW: noch eine kleine Korrektur
21.01.2018 15:35:04
onur
"Tabellenblatt "Datenbank" soll die gesamte Spalte 1 der Auswahlbereich sein.
Tabellenblätter 1-7 soll (nur) die Spalte 1 in jeder Zelle die Funktion haben"
Wo ist den der Unterschied?
AW: noch eine kleine Korrektur
21.01.2018 15:50:43
Frank
der Unterschied ist zu Deinem ersten Beispiel - da sind mehrere Spalten gelb und mit der Funktion ^^
Anzeige
AW: noch eine kleine Korrektur
21.01.2018 15:38:52
onur
Aha, habe es gesehen.
Aber die Zellen in Spalte 1 "Datenbank" sind doch viel zu breit (der Text ist zu lang, als daß er unter die Zelle passen würde).
AW: noch eine kleine Korrektur
21.01.2018 15:48:39
Frank
Verstehe das Problem bzw. den Unterschied nicht. Der Namen in Datenbank sind so lang und können evtl. länger werden. Aber die Spalte 1 in den Tabellenblättern 1-7 müsste genauso breit sein.
Anzeige
AW: noch eine kleine Korrektur
21.01.2018 15:58:11
onur
Teste mal Blatt 1.
Wenn ok, 2-7 löschen, Blatt 1 kopieren und in Blatt 2 umbenennen, dann wieder kopieren und in Blatt 3 umbennen usw.
Dann werden die Makros mitkopiert (das zur Frage, wo die Formeln sind - es gibt keine - nur Makros).
AW: noch eine kleine Korrektur
21.01.2018 16:08:29
onur
Habe einen Fehler entdeckt (das Makro hat immer alles in Tabelle1 kopiert, da ich nicht wusste, dass du mehrere Blätter hast).
Ist behoben.
https://www.herber.de/bbs/user/119142.xlsm
AW: noch eine kleine Korrektur
21.01.2018 16:13:07
Frank
hab den Unterschied jetzt nicht so entdeckt zu der "falschen" Datei. Ist auf jeden Fall genau das, was ich seit 3 Jahren vergeblich versucht habe hinzubekommen ^^
Vielen Dank nochmal!!
Also bei der neuen Datei Blätter 2-7 löschen und das erste kopieren bleibt?
Anzeige
AW: noch eine kleine Korrektur
21.01.2018 16:16:25
onur
Jo, genau so.
Denn Fehler hättest du bemerkt, sobald du blatt2 usw auch getestet hättest.
Ich nehme mal an, deine Formeln spucken nur Fehler aus, da die Datenbank außer Produktnamen keine Daten enthält?
Gruß
Onur
AW: noch eine kleine Korrektur
21.01.2018 16:21:56
Frank
Ja. Wenn ich die restlichen Spalten der Datenbank ausfülle funktioniert alles perfekt.
Vielen vielen Dank.
Vielen Grüße
Frank
Anzeige
AW: noch eine kleine Korrektur
21.01.2018 16:21:20
onur
Noch ein letzter Tip:
Gebe Bereichen nie Namen, die schon existieren (z.B.als Tabellenname), da EXCEL/VBA sonst große Probleme machen können.
AW: noch eine kleine Korrektur
21.01.2018 16:23:34
Frank
Oh man. Jetzt hast du mich wieder verwirrt ^^
AW: noch eine kleine Korrektur
21.01.2018 16:41:08
Frank
Eins ist mir noch aufgefallen: kann ich die Funktion in Blatt 1 über die Zeile 36 hinaus erweitern?
Anzeige
AW: noch eine kleine Korrektur
21.01.2018 16:46:31
onur

Public Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim c
Cancel = True
ComboBox1.Clear
For Each c In Tabelle2.Range("Datenbank1").Cells
ComboBox1.AddItem c.Value
Next
fi = False
ComboBox1.ListIndex = -1
Ze = Target.Row
Sp = Target.Column
If Ze > 36 Or Sp > 1 Then Exit Sub'Hier statt 36 eine andere Zahl

Du kannst sie ruhig in allen Blättern auf z.B. 100 ändern, hat keine negativen Auswirkungen (nur die Combobox geht auf bzw wird sichtbar (sie ist eigentlich immer da).
Anzeige
AW: Autocomplete aus anderem Tabellenblatt
19.01.2018 20:01:22
Frank
Vielen Dank für die schnellen Antworten.
Beide führen über einen kleinen Umweg zum gewünschten Ergebnis.
Schöner wäre natürlich, wenn unterhalb der jeweiligen Zelle eine DropDown Liste auf geht.
Folgefragen wären also, ist das das machbar? Und wie bekommt der Laie das in seine Datei?
Viele Grüße
Frank
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Autocomplete aus einem anderen Tabellenblatt in Excel


Schritt-für-Schritt-Anleitung

Um die Autocomplete-Funktion aus einer anderen Tabelle in Excel zu nutzen, folge diesen Schritten:

  1. Datenbank erstellen: Erstelle ein Tabellenblatt, das deine Datenbank enthält. Zum Beispiel nenne es "Datenbank" und trage in Spalte A die Namen oder Artikel ein.

  2. Dropdown-Liste einfügen: Gehe in das Tabellenblatt, wo du das Dropdown-Menü haben möchtest. Wähle die Zelle aus, in der das Dropdown erscheinen soll.

  3. Datenüberprüfung: Klicke auf Daten > Datenüberprüfung. Wähle im Menü "Zulassen" die Option "Liste".

  4. Formel eingeben: Gib als Quelle für die Liste folgendes ein:

    =INDIREKT("Datenbank!A:A")

    Damit wird die gesamte Spalte A als Auswahlquelle für das Dropdown-Menü verwendet.

  5. Autocomplete aktivieren: Um das Autocomplete zu aktivieren, benötigst du VBA. Öffne den VBA-Editor mit ALT + F11, füge ein neues Modul hinzu und kopiere folgenden Code hinein:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Column = 1 Then 'Spalte A
           Application.EnableEvents = False
           Target.Value = Application.WorksheetFunction.VLookup(Target.Value, Sheets("Datenbank").Range("A:B"), 2, False)
           Application.EnableEvents = True
       End If
    End Sub
  6. Datei speichern: Speichere die Datei als Makro-fähige Excel-Datei (*.xlsm), um die VBA-Funktion zu sichern.


Häufige Fehler und Lösungen

  • Dropdown funktioniert nicht: Stelle sicher, dass die Quelle der Liste korrekt eingegeben wurde und die Datenbank keine leeren Zellen enthält.

  • VBA-Code nicht ausgeführt: Überprüfe, ob Makros in deinen Excel-Optionen aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center und aktiviere die Makros.

  • Autocomplete funktioniert nicht wie gewünscht: Achte darauf, dass der VLOOKUP-Bereich korrekt eingerichtet ist und die Datenbank die richtigen Werte enthält.


Alternative Methoden

Wenn du keine VBA-Lösungen nutzen möchtest, kannst du auch die Funktion Datenüberprüfung mit einer benutzerdefinierten Formel verwenden, um eine Dropdown-Liste mit Daten aus einem anderen Tabellenblatt zu erstellen. Eine einfache Möglichkeit wäre, die FILTER-Funktion oder VERGLEICH zu verwenden, um dynamische Vorschläge zu erhalten.


Praktische Beispiele

  1. Datenbank mit Artikeln: Erstelle eine Datenbank mit Produkten in Spalte A und deren Preisen in Spalte B. Nutze die oben genannten Schritte, um die Preisvorschläge basierend auf der Auswahl im Dropdown anzuzeigen.

  2. Namen filtern: Wenn du eine Liste von Namen hast, kannst du das Dropdown Autocomplete verwenden, um schnell den gewünschten Namen auszuwählen, ohne die gesamte Liste durchscrollen zu müssen.


Tipps für Profis

  • Nutze benannte Bereiche, um deine Datenbank übersichtlicher zu gestalten. Anstelle von "Datenbank!A:A" kannst du einen benannten Bereich wie "Produktliste" verwenden.

  • Experimentiere mit der UserForm in VBA, um benutzerfreundliche Dropdown-Listen zu erstellen, die direkt Vorschläge anzeigen, während du tippst.

  • Achte darauf, die Breite der Dropdown-Zellen anzupassen, um sicherzustellen, dass lange Texte gut lesbar sind.


FAQ: Häufige Fragen

1. Wie kann ich die Autocomplete-Funktion für mehrere Zellen aktivieren?
Kopiere den VBA-Code in das entsprechende Arbeitsblatt-Modul für jede Zelle oder Spalte, in der du die Funktion nutzen möchtest.

2. Funktioniert das auch in älteren Excel-Versionen?
Ja, die beschriebenen Schritte funktionieren in Excel 2010 und später. Bei älteren Versionen können einige Funktionen wie die FILTER-Funktion nicht verfügbar sein.

3. Was ist ein alternatives Wort für „verwirrt“ mit 3 Buchstaben?
Ein alternatives Wort könnte „irr“ sein, wenn du nach einem kurzen Synonym suchst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige