vlth
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору SIgor33 Цитата: Excel 2003. Как кодом VBA "Пропустить ошибку" для текстовых цифр? Подскажите пожалуйста. | Application.Range("A1").Errors(xlNumberAsText).Ignore = True (Application.Cells(1, 1).Errors(xlNumberAsText).Ignore = True) Если нужно пропустить ошибки в диапазоне, содержащем более одной ячейки, придётся использовать цикл. Добавлено: Khotckevich Когда только вышел 2007-й офис, поставил его себе для пробы. Так вот, код, до этого работавший у меня без проблем, стало клинить в том месте, где программно добавлялась то ли ссылка на библиотеку в VBE, то ли модули классов книги и листа - уже точно не помню, что, но скорее второе. Победить Excel тогда так и не удалось, поэтому я решил, что ну его, 2007-й, куда подальше: нам и в 2003-м неплохо ))) Добавлено: М.б. сохранять файл в формате xltm ? Добавлено: mflash123 Поскольку Вы уже получили ответ в ветке в теме Excel FAQ, то эта функция будет, так сказать, "для коллекции" Код: Function fnСуммир_с_Условием(ДиапазонПросмотра As Range, _ ДиапазонСуммир As Range, Критерий As Variant) As Double 'ДиапазонПросмотра-диапазон в столбце "I" 'ДиапазонСуммир-диапазон в столбце "H" 'Критерий-ссылка на ячейку из столбца "D" Dim i As Long, oCell As Range, oCell2 As Range, dblSum As Double i = 1 For Each oCell In ДиапазонПросмотра If oCell = Критерий Then For Each oCell2 In ДиапазонСуммир.Rows(i).Cells dblSum = dblSum + oCell2 Next oCell2 End If i = i + 1 Next oCell fnСуммир_с_Условием = dblSum End Function | В ячейку E7 =fnСуммир_с_Условием(K$7:K$12;J$7:J$12;D7) "И растянуть вниз" | Всего записей: 258 | Зарегистр. 22-01-2008 | Отправлено: 18:41 27-12-2009 | Исправлено: vlth, 19:45 27-12-2009 |
|