2016-10-27 3 views
1

Я получаю ошибку времени выполнения 6: Переполнение через приведенный ниже код.Ошибка VBA 6 Overflow

n = (.Cells(Rows.Count, "A").End(xlUp).Row) 
FillP = Array("D", "E", "F", "H", "I", "J", "M", "O", "P", "AR", "AS", "BE", "BF", "BG", "BH", "BI", "BJ", "BK", "BL", "BQ", "BR", "BS", "BT", "BU", "BV", "BW", "BX", "BY", "CB", "CC", "CD") 

'fill blanks with na 
For i = 2 To n 
    For j = LBound(FillP) To UBound(FillP) 
     If Trim(.Range(FillP(j) & i)) = "" Then 
      .Range(FillP(j) & i) = "na" 
     End If 
    Next j 
Next i 

У меня есть Excel 2010, я еще не объявлял ни одну из вышеперечисленных переменных (буду делать после тестирования). Просто пытаюсь заполнить пробелы в определенных столбцах «na». Почти идентичный код появляется ранее в моем суб, и все же он работает нормально. Не знаю, где я иду не так.

Заранее благодарим за любую помощь!

+0

Дал попытку, боюсь, что это не имело значения. Если это помогает n = 2650 –

+0

Какая строка выдает ошибку? –

+0

И каковы значения переменных в то время? –

ответ

0

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

1

переполнение происходит при попытке присвоить значение переменной, превышающей ограничения типа данных. Я боюсь, что вы могли бы объявить i, j или n как Interger.

Также вам не нужен оператор точки перед ячейками &.