Match-Funktion? VBA funktioniert nicht richtig
Ich habe folgenden code und ich "name" in den Zellen B11 , B19 und B25 und ich erwarte ein Ergebnis von 19 oder 25 mit dem code, aber es gibt Y=1. Könnte mir jemand sagen, was ist das problem?.
Sub mat()
Y = Application.Match("name", ActiveSheet.Range("B19:B30"), 0)
MsgBox Y
End Sub
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entsprechend der Dokumentation zum SPIEL:
und mit
0
als optionales drittes argument (match_type
):Deshalb ist die zurückgegebene
1
bezieht sich auf die position aufB19
im arrayRange("B19:B30")
und das Codebeispiel ist in der Tat verhält wie erwartet.Die MATCH-Funktion sucht nach einem angegebenen Element in einer Reihe von Zellen, und gibt dann die relative position des Objekts in der Palette
Also das Parsen der parameter
ActiveSheet.Range("B19:B30")
bedeutet, dassB19
gleich relative position=1
.hinzufügen slgn
ex2: