Hallo,
in A habe ich untereinander mehrere Begriffe. Jetzt wechseln sich ständig die Position der Begriffe z.B der Begriff Auto steht mal bei A1 und mal bei A2 oder A130.
Nun möchte ich gerne das wenn in der Tabelle das Wort Auto gefunden wird die beiden Nachbarzellen B und C in Textbox1 und textbox2 angezeigt wird.
Vielelicht kann mir hier jemand helfen.
Gruß
Stephan
Hallo Stephan,
TextBox1 = Application.VLookup("Auto", Range("A:C"), 2, 0)
TextBox2 = Application.VLookup("Auto", Range("A:C"), 3, 0)
Gruß Uwe
Hi Stephan,
muss es unbedingt VBA sein?
Mein Vorschlag für eine Formellösung:
Tabelle4 | A | B | C | D | E | F | G | H |
1 | Begriffe | Zusatz1 | Zusatz2 | | gesucht: | Auto | parken | waschen |
2 | Fahrrad | fahren | Schlauch flicken | | | | | |
3 | | | | | | | | |
4 | Auto | parken | waschen | | | | | |
5 | | | | | | | | |
6 | | | | | | | | |
7 | Moped | tanken | pflegen | | | | | |
8 | Flugzeug | fliegen | enteisen | | | | | |
Formeln der Tabelle |
Zelle | Formel | G1 | =INDEX($A$1:$C$23;VERGLEICH($F1;$A:$A;0);SPALTE(B1)) | H1 | =INDEX($A$1:$C$23;VERGLEICH($F1;$A:$A;0);SPALTE(C1)) |
|
Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
(25.05.2016, 08:41)Kuwer schrieb: [ -> ]Hallo Stephan,TextBox1 = Application.VLookup("Auto", Range("A:C"), 2, 0)
TextBox2 = Application.VLookup("Auto", Range("A:C"), 3, 0)
Gruß Uwe
Vielen Dank.
Genau das was ich gesucht habe und es läuft. Super echt Klasse.
Hallo,
der VBA Code von Kuwer läuft gut .
TextBox1 = Application.VLookup("Auto", Range("A:C"), 2, 0)
Allerdings kann die Bezeichnung Auto öfters in Spalte A vorkommen mit unterschiedlichen Werten in der Nachbarzelle.
Habe den Code ein bisschen umgebaut, hat aber leider nicht funktioniert mit Application.VLookup.
Beispiel:
A: B:(Nachbarzelle)
Auto 1
Auto 2
Auto 3
Die Zahlen sollen in drei verschiedene Textboxen eingelesen werden wenn die Bezeichnung in A stimmt.
Ist die Bezeichnung nicht vorhanden soll eine 0 in den Textboxen stehen.
Die Bezeichnungen sind mal in A1 mal in A12 usw. immer unterschiedlich.
MfG
Stephan
Hallo Stephan,
schreib es so in der Tabelle (Die Bezeichnung in Spalte A darf nur einmal vorkommen, sonst funktioniert SVERWEIS (VLOOKUP) so nicht):
Code:
TextBox1 = Application.VLookup("Auto", Range("A:D"), 2, 0)
TextBox2 = Application.VLookup("Auto", Range("A:D"), 3, 0)
TextBox3 = Application.VLookup("Auto", Range("A:D"), 4, 0)
Gruß Uwe
Hallo Uwe,
das ist zwar eine gute Idee, aber ich kopiere den Inhalt einer PDF Datei in einer Multiline Textbox.
Jetzt nimm alles automatisch seinen lauf.
Der Inhalt geht in die Tabelle . Alles in Spalte A.
Jetzt verwende ich Trennen mit Spalten nach Leerzeichen.
Auto steht nun in A und Wert in B
Dies ist eine Beispiel Bezeichnung und die kommt öfters vor in A.
Danke für die Antwort, würde zwar funktionieren aber nicht in meinem Fall.
Hallo Stephan,
(27.06.2017, 13:30)89stephan89 schrieb: [ -> ]Dies ist eine Beispiel Bezeichnung und die kommt öfters vor in A.
was heißt
öfters genau? Maximal 3 wie die Anzahl Textboxen oder auch mehr?
Gruß Uwe
Hallo Uwe,
Der PDF Inhalt wird als erstes in mehreren Multiline Textboxen aufgeteilt die in verschiedene Arbeitsblätter gehen.
Da in der Teilrechnung das Wort Summe Rechnung öfters vorkommt und bei den Valuten steht auch Summe Rechnung.
Die dürfen nicht zusammen aufgeführt werden . Deswegen wird es erstmal aufgeteilt.
Da es verschiedene Rechnungen sind kommen diese Bezeichnungen auch unterschiedlich oft vor.
Bei der Teilrechnung bis zu 3 mal und bei den Valuten kann es auch schon öfters vorkommen.
Habe bestimmt 500 Textboxen.
Gruß
Stephan
Hallo Stephan,
vieleicht so?
Private Sub CommandButton1_Click()
Dim i As Long, j As Long
Dim strB As String
Dim varL As Variant
strB = "Auto"
varL = Worksheets("Tabelle1").Range("A1").CurrentRegion.Resize(, 2).Value
For i = LBound(varL) To UBound(varL)
If varL(i, 1) = strB Then
j = j + 1
Controls("TextBox" & j) = varL(i, 2)
End If
Next i
End Sub
Gruß Uwe