• ベストアンサー

VBA 範囲選択について

複数のセルを選択してマクロを実行し、範囲選択の個数をMsgboxで表示したいです 例えばA1:B5、C6、D2:E3、を同時に範囲選択していたら「3個」のように表示 分かる方がいらっしゃるのであれば、回答をよろしくお願いします

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

  • ベストアンサー
  • EL-SUR
  • ベストアンサー率76% (83/108)
回答No.3

Selection.Count だとセルの個数になりませんか? '------------------------- Sub test()   MsgBox "選択範囲:" & Selection.Areas.Count End Sub '-------------------------

jobvba
質問者

お礼

回答ありがとうございます! 解決しました

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

その他の回答 (3)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.4

No2です。 No3さんのご指摘の通りでした。失礼しました。 では、代わりの方法でこんなのもあるということで・・・・。 Sub test02() MsgBox Len(Selection.Address) - Len(Replace(Selection.Address, ",", "")) + 1 & "個" End Sub

全文を見る
すると、全ての回答が全文表示されます。
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

Sub test01() MsgBox Selection.Count & "個" End Sub ではいかがでしょうか?

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

関連するQ&A

  • Excel VBA アクティブセルからある一定のセルまでの範囲選択

    Excel VBA アクティブセルからある一定のセルまでの範囲選択 Excel2003を使用しています。 アクティブセルからC列に『計』と入力されている行の1行上のD列までを選択状態にするマクロを作成しようとしています。 C列に『計』と入力されている行は下記のように複数あるので、アクティブセルの行以下に入力されている次のC列の『計』の1行上までとしたいのですが、どのようにコードを書いたらいいでしょうか? 例えば… A2セルをアクティブにしていてマクロを実行するとA2:D3が選択状態に A7セルをアクティブにしていてマクロを実行すると、A7:D9が選択状態になるように という具合です。 わかりづらくて申し訳ありませんが、よろしくお願いします。    A     B     C     D 1  日付    №   品名    金額 2  1/1     1    ○○○   1,000 3  1/2     2    ×××   1,500 4              計      2,500 5 6 7   1/1     5    ○×○   2,000 8   1/3     6    ××○   1,200 9   1/4     7    ×○○   2,500               計      5,700            :            :

  • VBA、セルの選択範囲について

    下記のような表を用意し、   A   B  C  D  E 1    1月 2月 3月 合計 2 Aさん 1  2  3  6 3 Bさん 1  2  3  6 4 Cさん 1  2  3  6 5 合 計 3  6  9  18 セルの範囲選択を指定し別シートの任意のセルへコピーをVBAで行いたいのですが、 Aさん、Bさん、Cさんという範囲を選択する為に、合計という文字は含みたくないので、 Range("A2").Select Range(Selection, Selection.End(xlDown).Offset(-1)).Select と記載し、これは出来ました。 同様に、 1月、2月、3月という範囲も同様にxlToRightを使用し選択出来ました。 Range("B1").Select Range(Selection.End(xlToRight).Offset(, -1), Selection).Select しかし、B2:D4の範囲の指定の仕方がわかりませんでした。 データのレコード数は一定ではないのでB2:D4というように範囲を指定する事は出来ません。 そのときに応じてDさん、Eさんと増えたり、4月、5月と増えたりするので。 何か方法があればご指導お願いします。

  • エクセル/マクロ/セルの選択について(初心者です)

    最近マクロ機能を使い始めた初心者です。 マクロの記録を使い、ちょっとだけVBEで触っています。 以下のような場合、なんと記述すればよいでしょうか? 詳しい方にはとても簡単だと思われ、お恥ずかしいですが、 教えていただけましたら幸いです。 【実現したい内容】 あるセル範囲を指定している時に、実行すると、 指定していた範囲の行の、A列のみが選択される ※例えばB1:B3、またはC1:C3、またはD1:E3 のをセル範囲を選択している時に、マクロを実行すると いずれの場合もA1:A3を選択する。 表現が分かりにくいでしょうか…?

  • マクロを使い選択範囲を次々と変えて並べ替えたい

    マクロ作成は 範囲選択 A4~G12 マクロ記録開始 並べ替え E列 降順 マクロ記録終了 でマクロを作成し 次に範囲選択 A14~G22でこのマクロを実行すると範囲選択が前と同じA4~G12が並べ替えられてしまいます。 マクロの中を見ると範囲選択 A4~G12が書かれてしまっています。 次のように、選択範囲を次々と変えて並べ替えるマクロを作りたいのですがお教え願います。 1. 範囲選択 A4~G12を選択 マクロ実行で選択範囲をE列の値で降順並べ替える 2. 範囲選択 A14~G22を選択 マクロ実行で選択範囲をE列の値で降順並べ替える 3. 範囲選択 A28~G32を選択 マクロ実行で選択範囲をE列の値で降順並べ替える

  • VBAで範囲指定をかえるには?

    マクロで範囲の選択したいのですが、任意のセルの値で範囲の大きさをかえるということは可能でしょうか? 例:range("A1:C5").seiect   任意のセルの値より    range("B1:D6").seiect という具合です    全くのトーシローなんで宜しくお願いします。   

  • エクセルVBA セルの値を使ってのセル選択

    セルに入力した値でセル選択の範囲を指定したいです セルの値がxの時 セルB1~Cx と セルD100~Ex+100 を同時に選択したいのですが どうすれば良いのでしょう? セルA1に50と入力されているとします Range("B1:C50,D100:E150").Select となってほしい訳です Range や Cells とか調べたのですが分かりませんでした

  • EXCEL2003 選択した範囲のデータの入れ替え

    はじめまして。Excel2003を使っています。 離れたセルを複数選択して(A1~D1)と(C6~D6)双方のデータを入れ替えることはできるでしょうか? ちなみに(A1には数字・文字のデータ B1~D1はセルの色づけだけ)同様に(C6に数字・文字データ B6~D6はセルの塗りつぶしだけ)の入れ替えです。 現在は、コピーして離れたセルに貼り付けてを繰り返して双方を入れ替えしてます。 VBAでコード表を作る能力がありませんので、作っていただければ助かります。 A範囲選択 Ctrl B範囲選択  Enter でデータの入れ替えができれば使いやすいのですが・・・ はじめての質問で説明が解りにくいかもしれませんがよろしくお願いします。

  • 複数行の最下行の範囲選択

    こんにちは、マクロ初心者です。    A  B  C  D  E  F  G  H  I 1  あ  あ  あ        あ  あ     あ 2  あ  あ  あ        あ  あ     あ 3  あ     あ                 あ 4        あ                 あ 5        あ                 あ 6        あ                 あ 7        あ                 あ 8        あ                 あ 9        あ 10 上記のような表があるとき セル"A"列から"I"列までの最下行にあたる行を検索し、 更に最下行までの範囲をコピーして、別シートにコピーさせたいのです。 (上記の例だと、セル"A1"~"I9"の範囲をコピーする) Range("A1", Range("I1").End(xlDown)).Select Selection.Offset(0, 0).Select 上記のコードでできると思ったのですが、なぜか不必要な範囲まで選択されてしまいます。 (下方向に数行余計に選択されてしまう) これではダメなのでしょうか? ちなみに、数式などは入っておらず、入力されていないセルは全て空白です。 A列だけの最下行を選択するというのは簡単に出来たのですが、このように複数の範囲を 選択する場合は、どのようにコードを書くべきでしょうか。 マクロのスキルが無い為困っています。 アドバイスをよろしくお願いいたします。

  • 【Excel】アクティブセルから決まった範囲を選択する

    エクセルで、アクティブブセルから決まった範囲、 たとえば、セルA10がアクティブになっていれば A10~M10までを、セルB30がアクティブになっていたら B30~N30までを、常に1RX13C分を選択することを 覚えさせるような機能はありませんでしょうか? もしマクロでないと無理なら、マクロを教えていただけますでしょうか。

  • エクセルのマクロで範囲を選択するマクロ

    教えてください。 下記の通り、例えばA列の2~5にデータが入っている場合に、B2~D5の範囲を選択するマクロを教えてください。 A列のデータが入っている行は可変です。   A B C D E 1  2 6 3 7 4 9 5 10 6 7

専門家に質問してみよう