Ich bin neu in VBA, derzeit arbeite ich und mein Chef brauche mich, um ein Excel-Makro zu erstellen.Excel 2013 Daten in verschiedenen Zeilen mit Makro vergleichen "Laufzeitfehler 13, Typ stimmt nicht überein"
Die Makro-Funktion sind:
- vergleichen Daten Daten sind, mit Enddatum Startdatum.
- automatische Erinnerung Benutzer Mitarbeiter Vertrag veraltet, wenn Arbeitsblatt geöffnet.
- Wenn Mitarbeiter Verträge veraltet, markieren Sie Mitarbeiterdetails.
So jetzt bin ich fest, bis "Laufzeitfehler 13, Typ stimmt nicht überein".
Unten sind meine Kodierung Teil, Mismatch ist zwischen >>> < < <.
Private Sub Worksheet_Activate()
Dim rngA As Range
Dim rngD As Range
With Worksheets("Sheet1")
For Each rngA In .Range(.Range("A1"), .Cells(.Rows.Count, "A").End(xlUp))
For Each rngD In .Range(.Range("D1"), .Cells(.Rows.Count, "D").End(xlUp))
>>> If rngA.Value("A1:xlUp") >= rngD.Value("D1:xlUp") Then <<<
MsgBox "Sheet 1 Row " & rngA.Row & " expiring"
rngC.Interior.ColorIndex = 3
rngC.Font.ColorIndex = 2
rngC.Font.Bold = True
End If
Next rngD
Next rngA
End With
End Sub
'Wenn rngA.Value> = rngD.Value Then' – Sam
Warum Sie bedingte Formatierung nicht verwenden? Beachten Sie auch, dass Ihr Code Spalte A und Spalte D in derselben Zeile betrachtet (was sich von dem unterscheidet, was Sie in Ihrer Frage erklären). – brettdj
Vielen Dank für die schnelle Antwort, aber ich verstehe nicht Ihren Vorschlag .... @@ – Han