Поиск ячеек с ошибками в Excel

Программирование на Visual Basic for Applications
Мамонт1
Начинающий
Начинающий
 
Сообщения: 1
Зарегистрирован: 17.08.2004 (Вт) 11:54

Поиск ячеек с ошибками в Excel

Сообщение Мамонт1 » 18.08.2004 (Ср) 4:38

Задача состоит в следующем. Имеется файл Excel. Необходимо очистить ячейки с ошибками (#ДЕЛ/0!, #ЗНАЧ! и т.д.). Перебор всех ячеек работает медлено.

Пробовал использовать функцию Replace, результата не получил.

For i = 1 To objExcel.Sheets.Count
Set List = objExcel.Sheets(i)
r = List.Cells.SpecialCells(Excel.xlLastCell).Row
l = List.Cells.SpecialCells(Excel.xlLastCell).Column
Set rn = List.Range(List.Cells(1, 1), List.Cells(r, l))
rn.Replace Err, ""
If Err <> 0 Then Exit For
Set rn = Nothing
Set List = Nothing
Next i

Пробовал использовать функцию Find, - производит поиск ячеек с ощибками в VBA, но один раз, после чего он почему-то не может найти ячейки. Из под Visual Basic такие ячейки не находятся вовсе.

For i = 1 To objExcel.Sheets.Count
Set List = objExcel.Sheets(i)
r = List.Cells.SpecialCells(Excel.xlLastCell).Row
l = List.Cells.SpecialCells(Excel.xlLastCell).Column
Set rn = List.Range(List.Cells(1, 1), List.Cells(r, l))
Set rn1 = rn.Cells.Find(Err)
If Not rn1 Is Nothing Then
firstAddress = rn1.Address
Do
rn1.Value = ""
Set rn1 = rn.FindNext(rn1)
If rn1 Is Nothing Then Exit Do
Loop While (firstAddress <> rn1.Address)
End If
If Err <> 0 Then Exit For
Set rn = Nothing
Set List = Nothing
Next i

Можно ли как- то, используя функции find или replace, решить данную задачу? Заранее спасибо.

Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Сообщение Евген » 02.09.2004 (Чт) 11:01

попробуй
Код: Выделить всё
IsError(Cells(i, k).Value)
Ёж птица гордая, пока не пнешь - не полетит!


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 106

    TopList