Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Automatische Suche beim Ausfüllen einer Zelle nach Daten aus zweiter Tabelle
#1
Liebe Clever-Excel-Forum Nutzer, 

ich benötige mal wieder eure fachmännische Unterstützung. 

Ich beziehe meine Beschreibung auf die Beispieltabelle. 

Ich möchte, dass wenn ich in C2 anfange einen Firmennamen zu schreiben, er mir automatisch die Auswahlmöglichkeiten aus Tabelle 2 (Firmenname) anzeigt und ich diesen auswählen kann. Die restlichen Felder könnte ich dann automatisch durch einen SVERWEIS ausfüllen lassen aber ich habe keine Möglichkeit gefunden, wie ich die eben beschriebene Funktion hinbekomme. 

Ich hoffe mir kann dort jemand weiterhelfen. 

Vielen Dank für eure Hilfe ! Smile


Angehängte Dateien
.xlsx   Beispieltabelle.xlsx (Größe: 11,04 KB / Downloads: 14)
Antwortento top
#2
Hallo Marek,

mit einem Dropdown, das über ein dynamische Hilfstabelle befüllt wird, kann man sowas realisieren.

Siehe hier:
https://thehosblog.com/2013/11/12/excel-datenuberprufung-mit-suchfunktion/

Ist das das was du möchtest ?


Gruß
Fred
Antwortento top
#3
Hallo

das ist mit einem Textfeld möglich.
Füge ein Textfeld neben dem Feld für den Firmennamen ein.
Setze in ein Modul folgenden Code
Code:
Option Explicit

Private Sub TextBox1_Change()
    Dim a As Range
    With Tabelle2
        Set a = .Range("A2:A9").Find(TextBox1, lookat:=xlPart)
        If a Is Nothing Then
        Else
            Tabelle1.Range("C2") = a
        End If
    End With
End Sub

Der erste mögliche Name wird sofort ausgefüllt.

Man muss dann noch was für die Beendigung und Abbruch vorsehen, ebenso die weiteren Ausfüllfelder.

Aber so könnte es prizipiell laufen ...

Gruß, Raoul
Antwortento top
#4
Hallo Marek,

kommst Du mit diesem Hinweis zurecht? Gibt es wo Probleme?

Konntest Du mit meiner Antwort was anfangen?

Hast Du das Interesse verloren?

Gruß, Raoul
Antwortento top
#5
Hallöchen,

Du kannst, wenn Du auf den Usernamen klickst, auf der verlinkten Seite sehen, wann er zuletzt im Forum war - am 19.05.... Demzufolge hat er Deine Antwort gar nicht gelesen.
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
Antwortento top
#6
Hallo Raoul21, 

erstmal einmal vielen Dank für deine Hilfe und die verzögerte Antwort. 

Leider kenne ich mich mit Markos nicht aus :/ 
Ich habe versucht dieses einzufügen unter dem Visual Basic, allerdings wird mit dies nicht als Makro angezeigt, dass ich ausführen kann. 

Ich würde den Makro in D2 (Tabelle1) ausführen, ist das grundsätzlich korrekt?

Würde mich freuen wenn du mir nochmal versuchen kannst zu helfenSmile

Vielen Dank!
Antwortento top
#7
Hallöchen,

Deine Folgerungen sind alle korrekt. Der Code kommt dann jedoch nicht in ein beliebiges Modul sondern in das Codemodul vom Tabellenblatt.
Die Frage wäre jetzt nur, ob Du auch eine TextBox1 in dem Tabellenblatt hast. Der Code reagiert, wie die Bezeichnung des Makros schon sagt, auf Änderung derselben.
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
Antwortento top
#8
Hallo schauan, 

danke für deine Rückmeldung! 
Ich habe eine UserForm1 aber keine Textbox. Wird die UserForm1 automatisch erstellt, wenn ich meine Ursprungsdaten in Tabelle2 mit Strg+T umwandel? 

Kann ich statt Textbox1 einfach die UserForm1 als Datenquelle angeben? 

Und wie bekomme ich es in das Codemodul vom Tabellenblatt?

Danke dir schon mal im VorausSmile
Antwortento top
#9
hallo Marek,

vielleicht habe ich das nicht deutlich genug geschrieben:

Du musst die Textbox selbst erstellen und am Besten neben die Ausgabezelle (C2) positionieren, denn die ist Voraussetzung.

Das wollte ich in meinem Beitrag #3 mit
"Füge ein Textfeld neben dem Feld für den Firmennamen ein."
sagen.

Textfeld und Textbox sind hier gleichbedeutend zu verstehen.

Das Textfeld hat automatisch den Namen "Textbox1"

Nachdem Du Dich ja schon bedankt hast: Bitte gerne. Alles Gute. Tschüss.

Gruß, Raoul
Antwortento top
#10
Hallöchen,

wo kommt denn auf einmal eine Userform her? Du hast eine xlsx hochgeladen und da ist mit Sicherheit keine drin Sad

Wenn Du schon
Zitat:Ich habe versucht dieses einzufügen unter dem Visual Basic
dann siehst Du dort auch im Projektexplorer die Tabellenblätter und wenn Du da doppelklickst geht das Codemodul vom entsprechenden Tabellenblatt auf. Geht aber auch, wenn Du mit der rechten Maustaste auf die Textbox auf dem Blatt klickst und Code anzeigen wählst - vorausgesetzt, Du hast eine ActiveX-Textbox. Das ist beim Einfügen die aus dem unteren Bereich, wenn Du in den Entwicklertools bist. Die aus dem Reiter Einfügen ist ein Formularsteuerelement, da wirkt dieser code nicht.
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste