Image Angenommen, die Spaltenposition ist nicht festgelegt, zuerst müssen beide Spalten automatisch gesucht werden und dann die folgende Aufgabe ausführen. Fälle: -Vergleichen von Werten zweier verschiedener Spalten mit einer eindeutigen Bedingung
In Spalte 'C' ist ein zweistelliger Wert vorhanden, der zu einem siebenstelligen Wert in Spalte 'F' führt. In Spalte 'C' ist ein dreistelliger Wert vorhanden, der zu einem achtstelligen Wert in Spalte 'F' führt. Ich möchte prüfen, ob 'F2' und 'F3' mit 21 beginnen und ob keine Msgbox 'Fehler in dieser Zeile' ist. und ob 'F6' und 'F7' mit und 228 beginnen und wenn keine Msgbox 'Fehler in dieser Zeile'.
Danke. ++ Code
Sub CompareColumns()
Dim lr As Long, n As Long
Dim rng As Range, cell As Range
Dim strA As String, strB As String, str As String
Dim NotMatched As Boolean
lr = Cells(Rows.Count, 1).End(xlUp).Row
'Assuming your data starts from Row2
Set rng = Range("B2:B" & lr)
str = "The following cells don't match." & vbNewLine & vbNewLine
For Each cell In rng
If cell <> "" Then
n = Len(cell.Offset(0, -1))
If n > 0 Then
strA = cell.Offset(0, -1).Text
strB = Left(cell, n)
If strA <> strB Then
NotMatched = True
str = str & cell.Offset(0, -1).Address(0, 0) & " : " &
cell.Offset(0, -1).Value & vbTab & cell.Address(0, 0) & " : " & cell.Value &
vbNewLine
End If
Else
str = str & cell.Offset(0, -1).Address(0, 0) & " : " & cell.Offset(0, -1).Value & vbTab & cell.Address(0, 0) & " : " & cell.Value & vbNewLine
End If
End If
n = 0
strA = ""
strB = ""
Next cell
If NotMatched
MsgBox str, vbInformation
Else
MsgBox "Both columns match.", vbInformation
End If
End Sub
Bitte schreiben Sie den Code, den Sie bis jetzt erstellt haben –
Ich habe den Code gepostet, den ich von "sktneer" einem stackoverflow Benutzer bekommen habe. –