Я попытался найти электронные письма от имени ввода в ячейке из таблицы поиска (разные листы). Я пытаюсь найти имена из Cell K и получать сообщения электронной почты в R-ячейках. Я просматриваю письма из разных листов, называемых электронной почтой. Excel - Не удается найти диапазон, ошибка 91
Это моя таблица поиска. Но когда я пытаюсь найти с помощью Find, я получаю ошибку 91, которая является переменной объекта или с не установленным блоком, который, вероятно, может быть не найден и не может найти диапазон из таблицы поиска. Это мои коды VBA для разделенных имен и поиска. Я хотел бы вывести ';' в конце каждого имени, чтобы я мог просто отправлять электронные письма с электронной почтой для всех из них в ячейках.
Public Sub getEmails()
Dim toNames As Range
Set toNames = Range("K11") ' names input by user
Dim names As Range
Set names = Sheets("Email").Range("B2:C23") ' names range from lookup table from different worksheet
Dim splitNames
splitNames = Split(toNames, ",")
Dim selectedEmails As String
Dim findRange As Range
For i = 0 To UBound(splitNames)
' find the range matching the name
Set findRange = names.Find(What:=splitNames(i), LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
' if match found, get the email and store to selected emails variable
If Not findRange Is Nothing Then
selectedEmails = selectedEmails & Sheets("Email").Range("C" & findRange.Row) & ";"
End If
Next i
'output emails
Range("R11") = selectedEmails
End Sub
Пожалуйста, помогите, я действительно новичок в этом VBA. Это мой отладки результат
Квалифицируйтесь который лист ваш диапазон относится к - изменение 'selectedEmails = selectedEmails & Range ("B" & findRange.Row) & "; «' to 'selectedEmails = selectedEmails & Sheets (« Электронная почта »). Диапазон (« B »& findRange.Row) & ";« '(Не причина вашей ошибки, но будет причиной следующий вопрос.) – YowE3K
Ваша ошибка связана с отсутствием 'Set' в' Set findRange = names.Find (..... ' – YowE3K
У меня нет ошибки сейчас, спасибо. Но я не вывел, как ожидалось. он просто выводит одно имя, а не адрес электронной почты – gpsrosak