Макрос по нахождению индекса элемента в массиве по значению

При использовании макросов в Excel для оптимизации, порой не обойтись без использования массивов.

Массив VBA — это тип переменной, который  используется для хранения списков данных. Примером может быть сохранение списка стран или списка названий предоставляемых услуг. Могут возникать ситуации, когда нужно найти номер элемента в массиве, зная его значение, для дальнейшей обработки.

Для решения такой задачи предлагаю использовать следующую функцию:

Function FindIndex(arr,val)
    Dim r As Long
    For r = 1 To UBound(arr,1)
        If Not IsError(Application.Match(val, Application.Index(arr, r, 0), 0)) Then
            FindIndex = Application.Match(val, Application.Index(arr, r, 0), 0)
            Exit Function
        End If
    Next r
End Function

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Добавить комментарий