• ベストアンサー

エクセルのマクロについて

エクセルでマクロを作りたいのですが、 どうしても解らないところがあるので教えてください 仕事上毎日、データを入力しています データを検索するために、日々増えているデータ範囲を 常に選択できるマクロの構文を教えて下さい

  • JOX
  • お礼率83% (141/169)

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.1

>日々増えているデータ範囲を常に選択できるマクロの構文を教えて下さい 『データ範囲』がどのような形状でその中のデータ項目の意味合いが分かりませんが、 1行に1データが入力されているテーブル型のデータの例です。(Sheet1でA1から開始) データによって色々方法がありますが、アクティブセル領域をデータ範囲とする例です。 【1】は『アクティブセル領域=空白行と空白列で囲まれたセル範囲』をつかみます。 【2】は表題等がある時、【1】からデータ範囲だけにする時の書き方です。 途中に空白行や空白列があるような場合は、それに対応した範囲の決め方をする必要があります。 '【1】アクティブセル領域をつかむ方法 Sub Test1()   Worksheets("Sheet1").Activate: Range("A1").Select   'A1を含む、アクティブセル領域(空白行と空白列で囲まれたセル範囲)を選択   Dim TBL As Range   Set TBL = ActiveCell.CurrentRegion   TBL.Select End Sub '【2】アクティブセル領域をつかむ方法 '(表題などを除く。下は先頭行を1行除いている) Sub Test2()   Worksheets("Sheet1").Activate: Range("A1").Select   'A1を含む、アクティブセル領域(空白行と空白列で囲まれたセル範囲)を選択   Dim TBL As Range   Set TBL = ActiveCell.CurrentRegion   '1行下がった位置から1行少ない範囲を設定している   Set TBL = TBL.Offset(1, 0).Resize(TBL.Rows.Count - 1, TBL.Columns.Count)   TBL.Select End Sub

JOX
質問者

お礼

ありがとう御座います マクロは勉強中なので、悪戦苦闘中・・・・ このようなコミュニティーがあり助かります 本当に、ありがとうございました

その他の回答 (1)

  • kitunekko
  • ベストアンサー率53% (7/13)
回答No.2

・・・マクロより便利かも・・・ もしマクロにこだわらないよ、ということであればお試しください。 実は エクセルのメニューの中に、ご希望通りのものがあります。 ただ、メニューから選択するとなると、 「編集」   ↓ 「ジャンプ」   ↓ 「セル選択」   ↓ 「アクティブセル領域の選択」 と、かなり深くメニューをたどっていかなければなりません。  そこで、私はメニューバーにそのボタンを出して ボタン一押しでアクティブセル選択をして 日々楽して(?)います。  では、メニューにボタンを出す方法を紹介します。 (1) まず ツールバーのところにマウスカーソルを置いて「右クリック」します。 (2) 出てきたメニューの中から、一番下の「ユーザー設定」を選択します。 (3) 「ユーザー設定」のメニューが出てきますので、「コマンド」タブを選択します。 (4) 小さなウィンドウが2つ出てきますので、左側の「分類:」のところで「編集」を選択します。 (5) 右側に編集メニューの種類のいろいろなボタンが表示されますので、そこから(一番下のほうにあります)「アクティブセルの選択」ボタンを見つけたら、そこから ツールバーのお好みの場所までドラッグしてください。 (6) お好みの場所に配置できたらウィンドウを閉じます。 これで「アクティブセル領域の選択」が一度でできるようになりました。 (なお、この「ユーザー設定」のウィンドウを開いている間は、ツールバーに配置してあるボタンも、好きな場所に配置しなおすことができますので、使いやすいように並べ替えることも可能です。) お使いになるときは、 使用するデータ範囲の中に(どこでも結構です)セルを置いて 「アクティブセル選択ボタン」を押すだけです。これでアクティブセル領域(空白行と空白列で囲まれたセル範囲)を選択できます。 これでしたら、どんなファイルを開いても、いちいちマクロを設定しなくても 一度に手軽に処理できます。 「ユーザー設定」のツールボタンの中にはいろいろと便利なものがたくさんあります。一度ゆっくりご覧になると うれしいボタンをたくさん発見できます。 ぜひお試しください。 (^ ^)

JOX
質問者

お礼

御礼が遅れて申し訳ありません こんな方法があったのですね、助かりました マクロも捨てがたいのですが早速試してみます ありがとう御座いました

関連するQ&A

  • エクセルのマクロでどうすればいいか悩んでいます

    エクセルのマクロでどうすればいいか悩んでいます  毎月月初めに年間のデータシートから前月の競馬の成績をまとめて別のファイルに転記していこうと思っています 問題は1月分のデータをどうやって判断ささせるかで いま考えてるのは 月初めと月終わりに印の代わりとなる物例えば◯とかを入力しておいて その範囲だけ転記しようと思っているのですが a~j;列までデータがあるので range(a10000) Selection.End(xlUp).Select でデータの最終行を求めるところまではできてますが そこからk列を選択する構文はどう書けばいいかわからなくて困っています わかりにくくすいませんがお願いします

  • エクセルのマクロでセルの検索

    エクセルのマクロである特定の文字を検索してそこからデータの最終行までを範囲選択したいのですがどうすればいいですか ちなみに検索したいのはa列でデータはf列まであります

  • エクセルのマクロで他のシステムを動かせますか?

    エクセルのマクロで他のシステムを動かせるのか知りたいのですが、どなたか教えていただけませんでしょうか? 私は事務仕事をしています。仕事のひとつにデータの入力作業という仕事があります。これは会社が昔から使っているシステムのデータをエクセルに打ち直すという作業です。ひたすらコピーをする作業なのですが、毎日3時間くらい行うのでとてもしんどいです。 そのデータ入力作業を自動で行えないかと思いあれこれ調べていたところ「マクロ」というキーワードをみつけました。このマクロを使って他のシステムのデータをエクセルにコピペする作業は可能でしょうか?

  • エクセルのソートのマクロ

    エクセルでのソートのマクロを教えてください。  範囲選択は手動でその都度変更します。優先列、昇順は変更ありません。 例えば、AからE列までデータがあり、第一優先列をD列、第二優先列をA列として、それぞれ昇順でソートします。 範囲はその都度手動で複数行を全列選択します。 つまり、適宜、複数行を選択してからこのマクロを実行すれば常に先の形式でソートできるようにしたいです。  わかりにくい記述で恐縮ですがよろしくお願いします。

  • エクセルのマクロでデータの最終行の特定の列を選択

    エクセルのマクロでデータの最終行の特定の列を選択するにはどういう構文を書けばいいですか

  • エクセルマクロ?

    いつもお世話になります 1、シート「日報」のA5からAAの5まで毎日入力をします 行数は毎日変わります それをコピーして シート「月間」に やはり A5からAA5まで 貼り付けたいんですが 2、シート「日報」は毎日 クリアーし常にA5からAA5です 2日目は、シート「日報」を入力した後、コピーして シート「月間」の最終行を検索してその下の行に貼り付けたいのです それを、毎日繰り返し、月間を完成したいです 3、シート「月間」の最終行を検索する際、エクセルのバージョンが 各店舗違うので、そのあたりも考慮していただきたいです マクロ超初心者です よろしくお願いいたします

  • エクセルVBA(マクロ内でマクロを選択する)

    いつも有難うございます。 表題の件でご教示ください。 エクセルVBAのマクロ内でマクロを選択して実行したいと考えてます。 調べたのですが、単にマクロ内で他のマクロを呼び出す方法はありましたが 「選択して」という点が見つからず、恐縮ですがお願いいたします。 具体的には以下のような内容です。 (1)基本となるデータが1~100まであるとする (2)サブルーチンとしてのマクロ群A~Gがあるとする (3)データ1に対してはマクロAを行い、データ2、3に対してはマクロBを行い・・・という形でそれぞれ対応させるマクロが違う (4)データ50~70は同じマクロを実行したい (5)このときに実行するマクロで ・対象のデータを選択させる(入力BOXで開始番号(50)と終了番号(70)を指定する) ・A~Gのどのマクロを実行させるか選択させる ・データ50~70に対して、選択したA~Gのいずれかのマクロを順次実行していく というものを作りたいと考えています。 全体的なイメージは完成しているのですが、マクロ群を選択させる方法がわかりません。 (マクロ群A~Gはすでに作って使用です) 何卒、宜しくお願いいたします。

  • エクセルのマクロについて

    エクセルのマクロについて教えてください。 毎月、データをダウンロードし、VLOOKUP関数などを使って、 必要項目を入れ、ピポットテーブルで合計を出すという 作業をしています。マクロを使ったら、簡単にできるのでは ないかとやってみましたが、マクロで登録しても 毎月集計をするデータの件数が異なるため、 VLOOK関数で入力されるのが、そのマクロで登録したときの ものまでで、残りのセルが空欄になっていたり、 ピポットテーブルの集計は、データの範囲を選びなおしたり しないといけませんでした。 いい方法はないでしょうか。 マクロに作業を記録して、そのシートではなく、 ほかのファイルのシートで 実行する場合は、そのマクロを登録したときのファイル(シート)を 毎回開かなければならないのでしょうか。 基本的なことがわかっていません。 教えてください。

  • EXCELマクロ 最終データまでの範囲選択

    こんにちは。 EXCELマクロでデータの範囲選択の方法を教えてください。 A1~A10には10個のデータ(固定) B2~不定のデータ この範囲を選択する方法を教えてください。 (『 みたいにA列に固定データがあるのでうまく 範囲をひろえません。)

  • エクセルのマクロについて

    エクセル2010でのマクロについて、教えてください。 「全体を選択」→「昇順で並び替え」というマクロはどのように書けばできますか? マクロの記録でやると、そのシートでしか使えないマクロになってしまいますが、 データ量も違う色々なシートで使用したいのです。よろしくお願いします。

専門家に質問してみよう