VBAでマトリクス表の指定
毎日できる時に少しでもアウトプットしておく。
エクセルで、ある表データをマトリクス化するときに使った。
あるマトリクス表があり、その表を選択したい場合は、
Sub test() Range(Cells(4, 1), Cells(Cells(4, 1).End(xlDown).Row, Cells(4, 1).End(xlToRight).Column)).Copy Cells(8, 1).PasteSpecial (xlPasteAll) End Sub
テスト的にコピーにしてみた。
rangeのendプロパティでxldownで下方向に、ctrl↓した場合と同じところを指定できる。
また、同じくrangeのendプロパティのxlToRightで右方向に、ctrl→した場合と同じところを指定できる。
xlupで↑、xlToLeftで←。
結果はこんな感じになる。
サクッと書いたけど、可読性的にははこっちのほうがいいのかな
Sub test() Dim startRow As Integer startRow = 4 Dim startColumn As Integer startColumn = 1 Dim startCell As Range Set startCell = Cells(startRow, startColumn) Range(startCell, Cells(startCell.End(xlDown).Row, startCell.End(xlToRight).Column)).Copy Cells(8, 1).PasteSpecial (xlPasteAll) End Sub
ソースの記述方法も他の人のコードを参考にして詰めていきたい。
以上