Я новичок в VBA и не могу найти способ получить элемент массива по заданному индексу ... Хотя это может быть легко для вас.
У меня есть файл Excelс двумя столбцами, «Электронная почта» и «Категории», и я хочу отфильтровать все электронные письма для данной категории.
Я до сих пор получил следующий код:
Sub filterEmails()
Dim tbl As ListObject
Dim emails As Variant
Dim email As String
Dim categories As Variant
Dim category As String
Dim i As Integer
Set tbl = ActiveWorkbook.Worksheets("Feuil1").ListObjects("Tableau1")
emails = tbl.ListColumns("EMAILS").DataBodyRange.Value
categories = tbl.ListColumns("SERVICES").DataBodyRange.Value
i = 1
For Each email In emails
category = ???
If category = "some service" Then
MsgBox email
End If
i = i + 1
Next email
End Sub
Я пробовал много способов получить i-й элемент из массива категорий, например categories(i)
, но безуспешно.Это может быть потому, что я не смог инициализировать переменные с правильным типом.