У меня есть таблица Excel, которая имеет 100000 строк формулы (столбец C), которые будут применяться со ссылкой на данные, которые я вставляю в столбец A. Когда я хочу скопировать список результатов, я выбираю ячейку C1 и Ctrl+Shift+вниз, чтобы выбрать весь диапазон, а затем я Ctrl+C.

Проблема, с которой я сталкиваюсь, заключается в том, что пустые ячейки с формулой по-прежнему считаются имеющими значение. Поэтому, если я вставлю только 97000 строк в столбец A, когда я хочу выбрать данные из столбца C, я не смогу правильно использовать ctrl+shift+down, так как он выбирает все до C100000. Можно ли как-то игнорировать ячейки с формулами, где вычисленное значение пусто или не существует при перемещении ячеек или выборе диапазона?

1 ответ1

0

Вы можете использовать инструмент Find , чтобы Find All значения в столбце. Затем Ctrl-A чтобы выделить их все. Но с 100 000 предметов (или 97 000) это займет довольно много времени. Или вы можете использовать короткий макрос VBA для выбора диапазона.

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

Он может быть жестко запрограммирован для определенного столбца, и вы можете даже включить последовательность копирования / вставки значений в макрос, если захотите.

Option Explicit

Sub SelectWithValues()
    Dim R As Range
    Dim LastRow As Long

With Columns(Selection.Column)
    Set R = .Cells.Find(what:="*", after:=.Cells(1, 1), _
                        LookIn:=xlValues, searchorder:=xlByRows, _
                        searchdirection:=xlPrevious)
    If Not R Is Nothing Then
        Set R = Range(Cells(1, R.Column), R)
        R.Select
    End If
End With

End Sub

Для ввода этого макроса (Sub)alt-F11 открывает редактор Visual Basic. Убедитесь, что ваш проект выделен в окне Project Explorer. Затем в верхнем меню выберите «Вставить / Модуль» и вставьте приведенный ниже код в открывшееся окно.

Чтобы использовать этот макрос (Sub), убедитесь, что курсор находится в столбце, который вы хотите выбрать. alt-F8 открывает диалоговое окно макроса. Выберите макрос по имени и RUN .

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