エクセルのマクロの相対範囲の設定の仕方を教えて頂きたいです。


(例)

Sub

Range(”B1:B5).Select    B1:B5の範囲選択

Selection.Copy        コピー

Range(”C1”).elect      C1選択

ActiveSheet.P ste      貼り付け

Range(”D1:D5”).Select    D1:D5の範囲選択

Selection.ClearContents    削除

End Sub



以上のプログラムをA?:A??を範囲選択して

マクロを実行させると以下自動的に

① B?:B??を選択・コピー

② C?選択・貼り付け

③ D?:D??選択・削除

にする方法を教えて下さい。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:akibare No.1

回答回数157ベストアンサー獲得回数5

ポイント20pt

こんな感じでどうぞ。


Sub MacroNumberOne()


Dim r1, r2, r3, r4 As Range


Set r1 = Selection

Set r2 = r1.Offset(1)

Set r3 = r1.Offset(2)

Set r4 = r1.Offset(3)


r2.Select

r2.Copy

r3.Select

r3.PasteSpecial

r4.ClearContents


End Sub

id:suenaga3 No.2

回答回数20ベストアンサー獲得回数6

ポイント20pt

このページの

8) 選択範囲をオフセットする(ずらす)


この辺でいいのでしょうか?


微妙に質問の意図が飲み込めていません。

id:Dice-Kei No.3

回答回数19ベストアンサー獲得回数0

ポイント20pt

http://www.officetanaka.net/excel/vba/tips/tips34.htm

Office TANAKA - Excel VBA(アクティブでないシートのアクティブセル)

Selection.Address という値を使ってうまく作れそうですよ

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 m-down 19 13 0 2005-07-26 00:22:10

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません