2013-11-10 6 views
0

Я нашел интересную ошибку. Мне нужно работать с листом, созданным для сторонней программы. Некоторые камеры выглядят поврежденными. Они заполнены символом #. Excel показывает отрицательные числа в окне панели формул, и они должны быть датами.VBA Excel - ошибка переполнения 6 - неизвестный тип

В VBA я не вижу ни одного контента. Простой оператор: значение Range («адрес ячейки») вызывает ошибку переполнения 6. То же самое происходит, когда я пытаюсь увидеть его тип.

Как я должен прочитать всю Лист, ячейку по ячейке, единственным решением, которое я себе представлял, является управление этой ошибкой. Что-то вроде этого: При ошибке возобновляется следующее - если err> 0 ... и т. Д.

Возможно ли управлять этими ячейками без выключения ошибки времени выполнения?

+0

Возможно, система датировки 1904 года? http://support.microsoft.com/kb/180162 или вы можете преобразовать формат вашей ячейки в номер? – Sam

ответ

1

Как упоминал Сэм Уорд, причина для ### в ячейке, которая должна быть датой, но показывает отрицательное число, заключается в том, что вы используете систему дат 1900 и имеете отрицательное значение, который Excel не может показать.

Кроме того, если вы получаете ошибку переполнения в VBA при ссылке на свойство значения этой ячейки, значение в этой ячейке, вероятно, меньше -657434. (Что соответствует 1 января 100, что является нижним пределом диапазона дат, который может обрабатывать VBA).

Если приведенные выше предположения относятся к случаю, вы можете восстановить значение в этой ячейке, используя VBA, путем доступа к свойству value2.

Range("cell address").value2 

Это, конечно, не понятно, почему вы должны иметь формат для даты ячейку, содержащую этот тип значения, поэтому ваш рабочий лист может иметь другие проблемы.

Смежные вопросы