• ベストアンサー

マクロで範囲指定をするには

こんにちわ。 マクロを作りたいのですが。 B1セルにカーソルをおいてB列をデーターが入っている行の終わりまで範囲指定をさせたいのですがどのようにしたらよいのでしょうか。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.4

選択範囲を広げるのなら、 Range(Range("B1"), Range("B1").End(xlDown).Offset(1)).Select 一行下を選択するなら、下記のいずれでも可能。 Range("B1").End(xlDown).Offset(1).Select   最下行から上に探します。 Range("B" & Rows.Count).End(xlUp).Offset(1).Select Cells(Rows.Count, 2).End(xlUp).Offset(1).Select

SEINEN
質問者

お礼

ご回答ありがとうございました。 引用させていただきます。

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.5

こんばんは。 どちらかというと、それは、英語でいうイディオムのようで、きちんと、フレーズを確立したほうがよいと思います。もちろん、以下の書き方は丁寧な書き方ですから、省略できる部分もあります。 >実は次の作業でC列にB列のデータ分だけ関数式をいれたいのです。 >C列は空欄です。 もしエラーを出さないような正しい書き方だと、このようなものになります。 Sub Test1() With ActiveSheet  With .Range("B1", .Range("B65536").End(xlUp))   If .Cells.Count = 1 Then Exit Sub '1つしかない場合は除外   .Offset(, 1).FormulaLocal = "=B1" '式  End With End With End Sub

SEINEN
質問者

お礼

ご回答ありがとうございました。 応用させていただきます。

すると、全ての回答が全文表示されます。
  • DIooggooID
  • ベストアンサー率27% (1730/6405)
回答No.3

>上記指定後B列のデータの最終行の1つ次のセルにカーソルを止めるのはどうでしょうか。 これは、選択範囲をセル1つ分増やすということでしょうか?

SEINEN
質問者

補足

補足させていただきます。 実は次の作業でC列にB列のデータ分だけ関数式をいれたいのです。 C列は空欄です。 思いついたのは、B列のデーターの最終を見つけ、矢印でC列に移動し、Selection.End(xlUp)で上に範囲指定、と考えたのです。 いきなりC1から(X1down)を使うとエクセルの最終行まで範囲指定されてしまいますよね。他に何か良い方法がありますでしょうか。 わかりづらくてすみません。

すると、全ての回答が全文表示されます。
  • sizu-sizu
  • ベストアンサー率41% (113/275)
回答No.2

どうもです。 え~っと…マクロを組まないと駄目でしょうか。 B1のセルにカーソルを置いた状態にし,ctrlとshiftを押しながらB1とB2の境界部分をダブルクリックすればその列の一番下のデータまで選択された状態になりますが。 ご参考まで。

SEINEN
質問者

お礼

ご回答ありがとうございました。 すみません、マクロで行いたいんです。

すると、全ての回答が全文表示されます。
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

Range(Range("B1"), Range("B1").End(xlDown)).Select

SEINEN
質問者

お礼

ご回答ありがとうございました。 もうひとつお尋ねします。 上記指定後B列のデータの最終行の1つ次のセルにカーソルを止めるのはどうでしょうか。

すると、全ての回答が全文表示されます。

関連するQ&A