É possível evitar que os dados sejam colados nas colunas ocultas em um movimento de copiar/colar, em vez de copiar/colar várias vezes?
Responder1
Gostaria de sugerir comparativamente o método melhor e mais rápido para colar dados ignorando colunas ocultas.
Antes de copiar e colar:
Depois de colar:
Observação
Como você pode descobrir, a Macro ignorou o hidden Column H
, enquanto Cole os dados do Range A1:C9
.
Como funciona:
Ocultar Coluna/Colunas, com esta postagem
Col H
está oculta.QualquerClique com o botão direitooGuia Folha& no menu pop-up CliqueVer códigoou pressioneAlt+F11, para obter o editor VB.
cópia de&Colareste código VBA (Macro) comoMódulo PadrãoentãoCORRERa macroTestCopyPaste.
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")
eActiveSheet.Range("G1")
são editáveis.- Onde
A1:C9
está a origem a ser copiada eG1
o destino para colar os dados copiados. - Você também pode ajustar referências de células/intervalo de dados.