Excelには、いくつかのSpecialCellsメソッドがあり、そのうちの1つがワークシート内で最後に使用されたセルを検出します。何らかの理由で、マクロはこれを.SpecialCells(xlLastCell)として記録しますが、Excelヘルプ/リファレンスでは.SpecialCells(xlCellTypeLastCell)であり、値11も使用できます。0123現在のセルをシート内の最後のセルに移動します。
Sub Macro1()
' Macro1 Macro
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
End Sub
Sub Macro2()
' Macro1 Macro
Range(Selection, ActiveCell.SpecialCells(xlCellTypeLastCell)).Select
End Sub
Sub Macro3()
' Macro1 Macro
Range(Selection, ActiveCell.SpecialCells(11)).Select
End Sub
ここでは、sheet1とsheet2のデータをコピーしてsheet3に追加する非常に基本的な例を示します。
Sub Macro4()
Sheets("Sheet1").Select
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
'Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveCell.SpecialCells(xlLastCell).Select
Selection.Offset(1, 0).Select
Selection.End(xlToLeft).Select
ActiveSheet.Paste
Sheets("Sheet2").Select
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
'Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveCell.SpecialCells(xlLastCell).Select
Selection.Offset(1, 0).Select
Selection.End(xlToLeft).Select
ActiveSheet.Paste
End Sub
出典
2017-03-22 04:05:43
Kev
Excelのビルトイン録音機能を使用して、必要に応じてアクションを記録し、コードを変更し、さらに進めないという厳しい問題でコードを投稿します。 – Barney
Consolidate機能では、シートを別の空のシートにコピーして貼り付けることができないため、記録できません。 – Anne
列の量は同じままですか? –