
複数回コピー/貼り付けを行うのではなく、1 回のコピー/貼り付け操作で非表示の列にデータが貼り付けられないようにすることは可能ですか?
答え1
非表示の列をスキップしてデータを貼り付けるための、比較的最良かつ最速の方法を提案したいと思います。
コピー&ペースト前:
貼り付け後:
注意
ご覧のとおり、マクロは をスキップしhidden Column H
、範囲 からデータを貼り付けますA1:C9
。
使い方:
列を非表示にすると、この投稿は
Col H
非表示になります。どちらか右クリックのシートタブポップアップメニューから&をクリックコードを表示、またはAlt+F11、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
したデータを貼り付ける先の場所です。- セル参照/データ範囲も調整できます。