Можно ли предотвратить вставку данных в скрытые столбцы одним движением копирования/вставки, вместо того чтобы копировать/вставлять их несколько раз?
решение1
Я хотел бы предложить сравнительно лучший и самый быстрый способ вставки данных, пропуская скрытые столбцы.
Перед копированием и вставкой:
После вставки:
Примечание.
Как вы можете заметить, макрос пропустил hidden Column H
, при вставке данных из диапазона A1:C9
.
Как это работает:
Скрыть столбец/столбцы, при этом этот пост
Col H
скрыт.ИлиЩелкните правой кнопкой мыши the Вкладка листаи из всплывающего меню нажмитеПосмотреть код, или нажмитеАльт+Ф11, чтобы получить редактор VB.
Копировать&Вставитьэтот код VBA (макрос) какСтандартный модульзатемБЕГАТЬМакросТестКопироватьВставить.
Sub TestCopyPaste() CopySkippingHidden ActiveSheet.Range("A1:C9"), _ ActiveSheet.Range("G1") End Sub
Sub CopySkippingHidden(rngToCopy As Range, pasteStart As Range)
Dim c As Range
For Each c In rngToCopy.Columns
Do While pasteStart.EntireColumn.Hidden
Set pasteStart = pasteStart.Offset(0, 1)
Loop
c.Copy pasteStart
Set pasteStart = pasteStart.Offset(0, 1)
Next c
End Sub
ActiveSheet.Range("A1:C9")
иActiveSheet.Range("G1")
доступны для редактирования.- Где
A1:C9
находится Источник для копирования, аG1
где Цель для вставки скопированных данных. - Вы также можете настроить ссылки на ячейки/диапазон данных.