Thema Datum  Von Nutzer Rating
Antwort
Rot SVerweis in VBA (nein nicht VLookUP)
11.11.2019 18:50:46 Fabian
Solved
11.11.2019 19:26:02 xlKing
*****
Solved
11.11.2019 20:09:55 Mase
*****
Solved

Ansicht des Beitrags:
Von:
Fabian
Datum:
11.11.2019 18:50:46
Views:
695
Rating: Antwort:
 Nein
Thema:
SVerweis in VBA (nein nicht VLookUP)
Hallo,

ich brauche eure Hilfe.
Ich möchte einen SVerweis selbst schreiben und dabei nicht VLookUP verwenden.
Ich wollte das eigentlich über den Befehl Offset lösen, da ich dann flexiblel bin und mir auch den Wert links von der Matrix ausgeben kann.

Folgenden Code habe ich geschrieben, leider bringt er immer "Objekt erfoderlich" und makiert die Zeile mit "Cells(a, 2) = konto.Offset(0, 1)".
Mir ist klar, dass er "konto" nicht als Objekt sieht und somit der Offset nicht geht, aber ich weiß auch keinen Ausweg.




Spalte A        Spalte B      Spalte C   Spalte D        Spalte E                          Spalte F  
Kontonummer	Beschriftung			   Kontonummer nach Kontenplan	Kontobeschriftung nach Kontenplan
6855				                                        110	nicht benötigt
6858				                                        220	nicht benötigt
6770				                                        330	nicht benötigt
7700				                                        5500	nicht benötigt
9800				                                        6855	Test 1
				                                        6856	nicht benötigt
				                                        6858	Test 2
				                                        6770	Test 3
				                                        6800	nicht benötigt
				                                        7700	Test 4
				                                        8800	nicht benötigt
				                                        9800	Test 5



Dim a As Single
Dim y As Single
Dim y2 As Single


Sub Test()
    
    y = Cells(Rows.Count, 1).End(xlUp).Row              'Spalte A Kontonummer zur Definition, wie oft der SVerweis nach unten gezogen werden muss.
     
    y2 = Cells(Rows.Count, 5).End(xlUp).Row             'Spalte Kontonummer laut Kontenplan zur Feinikition der Matrixende
    matrix = Range(Cells(2, 5), Cells(y2, 5))

    
    For a = 2 To y
    
        For Each konto In matrix
            If konto = Cells(a, 1) Then               'Wenn Kontonummer aus Matrix gleich Kontonummer aus Spalte A, Dann
                Cells(a, 2) = konto.Offset(0, 1)      'Schreibe in Spalte B (Beschriftung) den Inhalt der Zelle eins rechts in der du die Kontonummer der Matrix gefunden hast
                Exit For
            End If
        Next konto
    
    
    Next a


End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot SVerweis in VBA (nein nicht VLookUP)
11.11.2019 18:50:46 Fabian
Solved
11.11.2019 19:26:02 xlKing
*****
Solved
11.11.2019 20:09:55 Mase
*****
Solved