Używam funkcji dopasowywania w programie Excel, ale mam z tym problem, ponieważ wybiera tylko identyczne dopasowania:. Na przykład, jeśli porównasz komórkę z "Bananem" do innej komórki z "Bananem", to zadziała i zwróci dodatnią wartość.
Ale jeśli porównasz "banan" do komórki, której treścią jest "Banana choco", to nie rozpoznasz, że słowo banan jest w komórce.Excel - VBA: spraw, aby metoda dopasowania była mniej restrykcyjna (przez znajdowanie słowa w zdaniu).
W moim przypadku chciałbym zwrócić wartość PRAWDA, gdy słowo zostanie zauważone w zdaniu.
Oto mój kod:
Worksheets("sBldgMakati").Activate
For i = 2 To 605
Range("B" & i).Activate
myResult = IsNumeric(Application.Match(ActiveCell.Value, elementsListRange, 0))
If myResult Then
Range("K" & i).Value = Range("K" & i).Value + 10
Else
Range("K" & i).Value = Range("K" & i).Value + 0
End If
Next i
muszę wskazać, że w tym kodzie, elementsListRange
odpowiadają zakresu komórek, których zawartość jest tylko jedno słowo („Banana” na przykład) i ActiveCell.value
jest zwykle dłuższe wyrażenie (na przykład "Banana choco").
Z góry dziękuję za pomoc!
Czy próbowałeś użyć funkcji 'Znajdź' lub' Wyszukaj'? I jest 'elementListRange' zakres komórek, lista VBA/kolekcja wartości komórek? – user2140261
Może mógłbyś wybrać odpowiedź na wszystkie twoje pytania, to jest powód, dla którego to robimy! –