3

Я ищу способ взять столбец данных (70 строк) с некоторыми видимыми записями, пустыми ячейками и результатами некоторых формул. Я ищу способ скопировать только введенные данные и результаты формулы.

например

    T1  T2  T3  T4  T5
    2   2       1   5
    1   6   3   4   
    1       6       1
        2   4   1   2
    1   2   1   3

вернется

    T1  T2  T3  T4  T5
    2   2   3   1   5
    1   6   6   4   1
    1   2   4   1   2
    1   2   1   3   

2 ответа2

1

Решение не VBA:

  1. Выберите стол.
  2. Хит Ctrl+G
  3. Хит Специальный ...
  4. Пика "Бланки"
  5. Хит Ctrl+-
  6. Пик "Сдвиг клетки вверх"
  7. Нажмите Enter

Tadaa!

1

Я предполагаю, что ваш лист выглядит так:

Начните

Откройте VBE ALT+F11 и вставьте новый Module

Скопируйте и вставьте приведенный ниже код и выполните RemoveEmptiesAndShfitUp

Sub RemoveEmptiesAndShiftUp()
    Dim i As Long, j As Long, r As Range
    For j = Cells(1, Columns.Count).End(xlToLeft).Column To 1 Step -1
        For i = Cells(Rows.Count, j).End(xlUp).Row To 2 Step -1
            Set r = Cells(i, j)
            If IsEmpty(r) Then r.Delete shift:=xlUp
            Set r = Nothing
        Next i
    Next j
End Sub

Код будет проходить итерацию от строки последнего столбца до второй строки первого столбца и удалять все пустые ячейки, сдвигая остальные. Так что ваш результат будет выглядеть

Конец

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .