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.

VBA Abgleich über zwei Bedingungen
#1
Hallo Zusammen,
folgendes Problem 1 Tabellenblatt mit Daten, ein zweites mit teilweise veränderten Daten (in einer Spalte C). Dazu sind die Anzahl der Zeilen verschieden.
Spalte B und die ersten 5 Zeichen in Spalte C sind der gemeinsame Nenner. Wenn diese gleich sind soll er das Ergebnis in Spalte H schreiben.
Das Ding läuft zwar 10 Minuten (ca. 5000 Zeilen), aber da ich diese Formel nur einmalig brauche ist mir das egal. Dazu kann ich es nicht besser :)
Jedoch hat sich irgendwo ein Fehler eingeschlichen welchen ich nicht finde.

Code:
Option Explicit

Sub Schleifal()
Dim i As Integer
Dim i2 As Integer
Dim letztezeile As Integer
Dim letztezeile2 As Integer
Dim SuchNummer As String
Dim SuchKondi As String


letztezeile = Sheets("Tabelle3").Cells(1048576, 1).End(xlUp).Row
letztezeile2 = Sheets("DebiKondi_WLM").Cells(1048576, 1).End(xlUp).Row
MsgBox letztezeile
MsgBox letztezeile2

For i = 1 To letztezeile
   SuchNummer = Sheets("Tabelle3").Cells(i, 2)
   SuchKondi = Left(Sheets("Tabelle3").Cells(i, 3), 5)
   
       For i2 = 1 To letztezeile2
       If SuchNummer = Left(Sheets("DebiKondi_WLM").Cells(i2, 2), 5) And SuchKondi = Left(Sheets("DebiKondi_WLM").Cells(i2, 3), 5) Then
       Sheets("Tabelle3").Cells(i, 8) = Sheets("debikondi_wlm").Cells(i2, 3)
       End If
       Next i2

Next i

End Sub

Hat jemand eine Idee?
Antwortento top
#2
Hallo mikeno,

ich weiß nicht, ob der Fehler wirklich so einfach ist - Du schreibst
Zitat:1 Tabellenblatt mit Daten, ein zweites mit teilweise veränderten Daten

In Deinem code suchst Du aber nur auf einem Tabellenblatt
If SuchNummer = Left(Sheets("DebiKondi_WLM").Cells(i2, 2), 5) And SuchKondi = Left(Sheets("DebiKondi_WLM").Cells(i2, 3), 5) Then
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
Antwortento top
#3
Danke für die Antwort.
Hab den Fehler entdeckt.

Hatte einmal zu oft die Left-Funktion eingebaut. Somit gab es mehrere gleiche Ergebnisse.

Danke.
Antwortento top


Gehe zu:


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