- ベストアンサー
エクセルマクロで教えてください
エクセル2003です。 自動マクロで下記のようなマクロを造ったんですが Selection.End(xlDown).Select Range("A29:D29").Select ■A29を止まったセルの番号にしたいのです。(A**からD**まで) With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False End With Selection.Merge Range("A30").Select ■A30を止まったセルの番号にしたいのです 以上2箇所の指定を教えていただけますでしょうか。 よろしくお願いいたします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
こんな感じでどうでしょうか? Selection.End(xlDown).Select With Range(Cells(Selection.Row, "A"), Cells(Selection.Row, "D")) .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False .Merge End With
その他の回答 (4)
- hige_082
- ベストアンサー率50% (379/747)
文章でも処理の説明を! マクロの記録は不必要なコードも多いので やりたいことの説明があると回答がしやすい With Range("a1").End(xlDown).Resize(, 4) .VerticalAlignment = xlCenter .IndentLevel = 0 .Merge .Offset(1).Select End With 以上参考まで
お礼
御回答有難うございました。 参考にさせていただきます。
- okormazd
- ベストアンサー率50% (1224/2412)
#3です。 訂正です。 なんか調子が悪いな。<(_ _)>。 Sub test() With Range("A1") .End(xlDown).Resize(.Rows.Count, .Columns.Count + 3).Select End With With Selection .Merge .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter .Offset(1, 0).Select End With End Sub
お礼
何度もご回答いただきありがとうございました。 参考にさせていただきます。
- okormazd
- ベストアンサー率50% (1224/2412)
#2です。 訂正です。 次でどうでしょう。 Sub test() With Range("A1") .End(xlDown).Resize(.Rows.Count, .Columns.Count + 3).Select End With With Selection .Merge .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End With Selection.Offset(1, 0).Select End Sub
- okormazd
- ベストアンサー率50% (1224/2412)
こんな感じでどうでしょうか? Sub test() With Range("A1") With .End(xlDown).Resize(.Rows.Count, .Columns.Count + 3) .Merge .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End With End With Selection.Offset(1, 0).Select End Sub
お礼
早速のご回答ありがとうございました。 うまくいきました、使わせていただきます。