Я новичок в VBA, и я пытаюсь это сделать, но я думаю, что мой счетчик «To» ошибочен. Я хочу, чтобы он выполнял указанные действия до тех пор, пока не осталось больше столбцов для вырезания.VBA За цикл до тех пор, пока столбец не пуст.
Что происходит, у меня есть горизонтальный набор данных (столбец «Т» до «EV»), который я нарезаю и вставляю по вертикали на столбец S. Это работает, но я все еще получаю эту ошибку:
я получаю:
ошибка выполнения '1004':
Этот выбор не является действительным. Существует несколько возможных причин:
- Копирование и вставка областей не могут пересекаться, если они не имеют одинаковый размер и форму.
- Если вы используете Создать из команды выбора, строки или столбца, содержащего предложенные имена не будут включены в (отрезает здесь)
Код:
Dim x As Integer
For x = 0 To ActiveCell.CurrentRegion.Columns.Count
ActiveCell.Select
ActiveCell.Offset(0, x).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Range("S3000").Select
ActiveCell.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
Range("T11").Select
Next x
Пробовал, но получаю, ошибка времени выполнения '438': объект не поддерживает это свойство или метод. Он выделяет строку «range» («s3000»). End (xlup) .offset (1,0) .paste »при отладке – Leon
В коде @iDevlop есть запятая, где (я считаю) у нас должна быть точка. –
Я изменил запятую на точку. Я поймал ошибку. спасибо, хотя – Leon