У меня есть столбец данных на листе Excel, в котором распределены пустые ячейки.У меня есть соответствующий столбец информации о дате / времени, в котором нет пустых ячеек.Мне нужно удалить из столбца даты / времени те элементы, которые соответствуют пустым ячейкам в столбце данных.например, мне нужно удалить элементы времени для 5 и 9.
Time Data
1 1
2 2
3 3
4 4
5
6 5
7 6
8 7
9
10 8
11 9
12 10
Используя VBA, я сгенерировал список пустых ячеек в столбце данных с этим кодом:
deleteCells = sht.Columns(n).SpecialCells(xlCellTypeBlanks).Address _
RowAbsolute:=False, ColumnAbsolute:=False
и затем я удаляю сопутствующие элементы столбца времени со следующим кодом.
destSht.Range(deleteCells).Offset(0, n - 1).Clear
destSht.Columns(2*n-1).SpecialCells(xlCellTypeConstants).Copy _
Destination:=destSht.Columns(tempcol)
destSht.Columns(tempcol).Copy Destination:=destSht.Columns(2*n-1)`
(Смещение означает удаление одного столбца слева от заданной ссылки, следующие две строки затем копируют данные ввременно и в процессе закройте пробелы, созданные в столбце, затем скопируйте его обратно.)
Но возвращаемая строка для deleteCells
усекается до 256 символов (Len (deleteCells) => 256).Это не охватывает все ссылки на ячейки, которые мне нужно удалить.
Как получить адрес, чтобы он возвращал более длинную строку?Если при этом не будет возвращено более 256 символов, как я могу получить полный список ячеек, которые мне нужно исключить из моего столбца Time, чтобы иметь непрерывный столбец Data?