- ベストアンサー
エクセル 範囲 最後
エクセルの範囲選択について。 A2からB列の最後までを範囲指定したいです。 グラフのデータ選択のため。 =$A$2:B・・・(中途半端です よろしくお願いいたします。 A B ------------- 1| 54 75 2| -4 6 ・・・・ A2からB列の最後まで
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
ご用命有り難うございます。 今回のこの欄では「連続した出た範囲のRangeを教えてくれる」 と、云うのもでよろしいでしょうか? もっとお求め頂けるならば、その旨をお申し付けください。 以下URLにファンクションプログラム形式で保存しています。 必要に応じてVBAに取り込んでお使いください。 ただ、 横行に云う割には、やっていることは たいしたことないです。 見出し行中のデータ直上の文字列を 引数「シート」で指定されたシートに対し、 A1を起点に行、列、共に 引数「検索範囲」で引き渡される範囲 引数「Key文字列」を検索し それを元に見出し行を特定し 見出し行に連なる連続域を取得し 下にずらした分をサイズ調整しています。 使い方 データ範囲の直上にある、セル結合されてない 見出し行の中にある、文字列の入ったセルを1つ 任意に見定めてください。 そのセルが、A1を起点に何列、何行目にあるか カウントしてください。 今カウントした行数、列数の 数値の大きい方に、 少し更に余裕を持たせて 引数としてください。 ただしこの数を大きくしすぎると、やや処理が重たくなる可能性があります。 あと、 シート名と、セル中の文字列(特定できる範囲で構いません)を 文字列で引数にしてください。 指定に問題がない多くの場合、 求める領域(Range)を返してくれる筈です。 仕様 呼び出す際に引き渡す引数 「シート」 検索対象シート名 String 「検索範囲」 検索対象範囲 Long 「Key文字列」 検索対象文字列 String 戻り値 検索文字列が見つかった場合 → そのRangeを返す 検索文字列が見つからなかった場合 → Nothingを返す 実は このNothingを返す辺りとか、やや不安です。 (投稿前に急遽変えました、未デバッグです) あと → オフセット出来ない → 見出し行が1号で無い などの時も挙動に問題がありそうです。 何かご不明点など、ありましたなら その旨も、お申し付け頂けましたなら幸いです。 お役に立てていますでしょうか… P・s・ 複数行の見出しへの対応は検討中です。 何とか出来そうな気がしています。
- 参考URL:
- http://sdrv.ms/Zs3mIn
その他の回答 (6)
- matyu1003
- ベストアンサー率42% (257/598)
No.1です。 グラフを一旦作ったら、グラフを右クリックして「データの選択」を選ぶと「グラフデータの範囲」という項目が出てきます。この中は、例えば =Sheet1!$A$2:$B$1000 と書かれていると思いますが、この最後の数字の部分だけ列の最後のセルの行数に書き換えてやるだけでいいですよ。例えばこんな感じ。 =Sheet1!$A$2:$B$1023 VBAで書いて実行するぐらいなら、こちらのほうが手間がかからないかと思います。
- tom04
- ベストアンサー率49% (2537/5117)
No.4です。 たびたびごめんなさい。 途中に空白セルがないのであれば、わざわざマクロでやらなくても A2・B2を範囲指定 → ShiftキーとCtrlキーを押しながら下向きの矢印キー押下 これでA2セル以降B列最終行まで範囲指定ができます。m(_ _)m
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! 単に範囲を選択するだけで良いのでしょうか? そうであれば・・・ VBAになってしまいますが、一例です。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub 範囲選択() 'この行から Dim i As Long i = Cells(Rows.Count, "A").End(xlUp).Row Range(Cells(2, "A"), Cells(i, "B")).Select End Sub 'この行まで こんなんではどうでしょうか?m(_ _)m
- Nouble
- ベストアンサー率18% (330/1783)
興味があればそう申付け頂けると助かります。 内容はこうです 数行多い目に範囲選択して名前を付ける グラフデータ範囲の指定時に名前で範囲選択し 適正範囲に修正する データは行挿入、又はVBAによるデータ挿入のみで行う。 以上が概要です。 ところで、VBAうぬんと云いましたが、 まあそもそもの話、 VBAを導入する位なら、… て、ところもありますよね。 データが非連続でない限り VBAだとボタンワンクリックで済むのですが… VBAはウイルスとゴッチャ視されやすいです。 問題視する事業所もあり、 同様の理由で事前承認が必要な場合も殆どで かなりの配慮、理解が必要でしょうから 厄介でしょうね… もし興味を持たれましたなら、 その旨コメントを頂ければ幸いです
- shintaro-2
- ベストアンサー率36% (2266/6245)
>今後どれぐらい増えるかわからない状態ですと、 >データ追加のたびに、上記の操作をしないと >ダメなのでしょうか。 そういうことです。 それが嫌な場合は、 データの並び順を逆にして 今後発生するデータは 2行目に挿入してください。
お礼
ご回答ありがとうございます。 難しい所です。
- matyu1003
- ベストアンサー率42% (257/598)
1. [a1]にカーソルを移動する 2. Ctrl + Shift + 右矢印 を押す([a1:a2])が選択された状態になる 3. そのまま Ctrl + Shift + 下矢印 を押す で、B列の最後まで選択できるようになります。この状態でグラフを作成して下さい。 もし、すでにグラフを作っていたら、グラフを右クリックして出てくる「データそーその選択」メニューで上のやり方で範囲を変更できますよ。
お礼
早速のご回答ありがとうございます。 今後どれぐらい増えるかわからない状態ですと、 データ追加のたびに、上記の操作をしないと ダメなのでしょうか。
お礼
大変ご親切なご回答ありがとうございます。 VBAは、多少知っています。 もし可能でしたらで構いません。 ご教示いただけないでしょうか? よろしくお願いいたします。