Я использую приведенный ниже код для циклического прохождения по отфильтрованному столбцу и собираю каждое имя продавца по мере его прохождения;Я использую SpecialCells (xlCellTypeVisible), который собирает только видимые строки.Мне нужно имя только один раз, поэтому я использую функцию таблицы показателей.Как только у меня есть имя, я сохраняю его во временной переменной (namelist_tmp) и добавляю точку с запятой.Конечная игра - создать переменную (список имен), каждое имя которой должно быть разделено точкой с запятой, чтобы я мог использовать ее в разделе .to некоторого кода электронной почты, который у меня есть.
Я могу выполнить цикл и захватитьимя, но когда я пытаюсь присвоить временную переменную конечной переменной, я получаю ошибку во время выполнения 5 Неверный вызов процедуры или аргумент в коде namelist_tmp: namelist = Left(namelist_tmp, Len(namelist_tmp) - 2)
Я не уверен, что собираюсьПравильно ли это, может ли добрая душа помочь мне увидеть ошибку моего пути?
Sub filteredstuff()
Dim lastRow As Long, myrange As Range
lastRow = Cells(Rows.Count, 2).End(xlUp).Row
For Each myrange In Range("E11:E" & lastRow).SpecialCells(xlCellTypeVisible)
'At each name, use COUNTIF to look upwards and see if the name already exists.
'If not, add name, semi-colon and space to temporary name list
If WorksheetFunction.CountIf(Range("E11:E" & myrange.Row), _
Range("E" & myrange.Row)) < 2 Then
namelist_tmp = namelist_tmp & Range("E" & myrange.Row).Value & "; "
End If
'Strip last semi-colon & space off of temp list
namelist = Left(namelist_tmp, Len(namelist_tmp) - 2)
Next myrange
MsgBox namelist
End Sub