- ベストアンサー
エクセル マクロで数式の検索範囲を指定するには
いつもお世話になります。 別シートに貼り付けたデータを、マクロで自動的にSUMIFやCOOUNTIF関数で集計しているのですが、現在は範囲を3~65536行までにしています。(上2行を見出しにしているので) これだと計算に非常に時間がかかるのですが、貼り付けたデータの行数のみを数式の範囲にするか、もしくは同じようなことをVBで行うことは可能でしょうか。 以上宜しくお願い致します。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
- ta123
- ベストアンサー率51% (95/186)
- imogasi
- ベストアンサー率27% (4737/17068)
- Samurai-Jack
- ベストアンサー率18% (130/697)
- ta123
- ベストアンサー率51% (95/186)
関連するQ&A
- Excel関数について,参照データの範囲が変わる時
Excelの関数について教えてください。 まずExcelで、”Sheet1とSheet2があり、Sheet2には、Sheet1のデータをもとに情報が入力されるように関数{IF(Sheet1!A1="","",Sheet1!A1)}を200行目まで入力されている”ものがあるとします。 それを使って以下のような作業を行います。 1. 職場のシステムからExcelデータを抽出する 2. 抽出したデータをエクセル(sheet1)に貼り付ける。 3. Sheet2にSheet1をもとにした計算結果が表示される 以上が現在、行っている作業です。 ただ問題があり、毎回、sheet1に貼り付けるデータの範囲(行数)が異なるため、sheet2のどこまでに数式を設定しておけばいいのかわかりません。今は適当に200行目まで数式を入力してあります。 『質問』Sheet1に貼り付けるデータの範囲(行数)と同じ範囲(行数)分だけ、Sheet2にも数式が表示されるようにしたい。(例)sheet1に2345行あるデータが貼り付けられた→それをもとに、Sheet2に関数を2345行目まで、自動で入力する。 大変お手数ですが、分かる方教えて頂けますか?よろしくお願いします。
- 締切済み
- Excel(エクセル)
- エクセル 異なる範囲の集計(合計)
誰かアドバイスをお願いします。 エクセルで下記の様な異なる行数(範囲)を自動集計させたい場合はどうすればよろしいでしょうか? A B C D E 日付 注文NO 金額 注文金額計 日別注文金額合計 1 5月1日 1 50 150 250 2 50 3 50 4 2 50 100 5 50 6 5月2日 3 50 50 150 7 4 50 100 8 50 やりたい事は、D列へ注文金額計に注文NO別の合計金額を集計させる事(注文NOごとの一番上の行のみです。) と E列へ日別の注文金額合計を集計させる事です。(日別の一番上の行のみに表示) sumif関数を使えばうまく行きそうなのですが、問題が2つあります。 (1)集計条件の日付や注文NOは、重複している場合は、一行のみ表示の仕様です。(他ファイルからデータを貼りける為、その様な仕様になり、極力入力する事は避けたいです。) (2)合計範囲の行数が一定ではないので出来ればEやD列の全てのセルに関数なりを設置し、一番最上行のみに結果を表字したい。例えばsumif関数をE,D列全ての行に設定してしまうと同じ集計結果が何行にも渡って表示されてしまうのは避けたい。(上の例でいえばE列に150が何行も表示されてしまう。 かといって重複行の最上行のみに関数を設定するのは、一行ずつの作業になってしまう為、避けたい。 何かいい方法がないでしょうか? 個人的には、関数の方がやりやすいのでいいのですが、マクロやVBEでもあれば教えて頂けますでしょうか?
- ベストアンサー
- その他(ビジネス・キャリア)
- VBAでのセル範囲指定について
お世話になります。 私が分からないのは、VBAでのセル範囲指定なのですが、 例えば、シートにデータが有、そのデータの1行目は見出しなので 2行目からデータが入っているセルまでの範囲を指定、コピーして 隣のシートに貼付したいのですが、そのデータの入力される範囲が 毎回違います。「CurrentRegion.Select」としてしまうと、1行目 の見出しまでも範囲指定されてしますので、どうやったら良いのか どなたかお教え頂きたく宜しくお願い申し上げます。
- ベストアンサー
- SE・インフラ・Webエンジニア
- Excelのマクロを使わず、数式内のセル指定範囲をダイナミックにすることはできますか?
Excelで数式内に範囲を指定するときに、先頭と最後尾のセル番地を指定しますが、他のセルで指定した数値を指定したセル番地の行数に指定することはできますか? 例えば、以下のようなサンプルにおいて A B C D 1 10 2 4 2 32 3 42 4 20 5 17 6 =sum(A2:A4) C1番地に2、D1番地に4を入力すると自動的に A6番地でA2~A4の範囲を指定して足し算してくれるようなことをマクロを使わずに実現できるでしょうか?
- ベストアンサー
- オフィス系ソフト
- エクセルのマクロについて
エクセルのマクロについて教えてください。 毎月、データをダウンロードし、VLOOKUP関数などを使って、 必要項目を入れ、ピポットテーブルで合計を出すという 作業をしています。マクロを使ったら、簡単にできるのでは ないかとやってみましたが、マクロで登録しても 毎月集計をするデータの件数が異なるため、 VLOOK関数で入力されるのが、そのマクロで登録したときの ものまでで、残りのセルが空欄になっていたり、 ピポットテーブルの集計は、データの範囲を選びなおしたり しないといけませんでした。 いい方法はないでしょうか。 マクロに作業を記録して、そのシートではなく、 ほかのファイルのシートで 実行する場合は、そのマクロを登録したときのファイル(シート)を 毎回開かなければならないのでしょうか。 基本的なことがわかっていません。 教えてください。
- 締切済み
- その他(インターネット・Webサービス)
- マクロでグラフ範囲を変更するには
シート上の全グラフに対して、データ範囲のうち上から4行目までだけをグラフに使うように、マクロで一気に変更したいのです。(今は、使っている行数はグラフによって違う) そもそも、現在のデータ範囲をどうやって取得すればよいでしょうか? ネットや本で探しても見つかりません。マクロは初心者なので、調べ方がわるいと思うのですが・・・何かとっかかりだけでも教えてもらえると助かります!
- ベストアンサー
- Visual Basic
- エクセル ファイルサイズ
エクセルのファイルサイズが約15MBと非常に大きく、立ち上がり/保存が遅く、困ってます。 データを入力しているシートは41シート。データを入力している列は全シート9列。データを入力している行はシートによりばらつきがありますが、60行~4000行の範囲です。また、全シートの入力行数総計は約36000行です。 マクロはVBAは使っていない(はず)です。数式、関数も使ってません。 ここまで容量が大きくなるか?と思います。ファイルサイズを縮小する方法、どなたかご存知ないでしょうか?ご教示お願いします。
- 締切済み
- オフィス系ソフト
- 数式のコピーのズレを直す方法、マクロ、関数のいずれかの方法を教えてください!!
数式のコピーのズレを直す方法、マクロ、関数のいずれかの方法を教えてください!! Sheet1には、計算結果が表示されるようにしてあります。 その結果の数式は、 =IF(Sheet2!A1="","",IF(Sheet2!A1<2,"<",ROUND(Sheet2!A1,2))) と、入っています。 計算結果の表示上、「Sheet1 A1とA2」の2行のセルを結合して1行にしてあって、対して「Sheet2はA1」の1行です。 これをつぎの「Sheet1 A2」に数式をコピペしていくと、 =IF(Sheet2!A2="","",IF(Sheet2!A2<2,"<",ROUND(Sheet2!A2,2))) と、していきたいのですが、 =IF(Sheet2!A3="","",IF(Sheet2!A3<2,"<",ROUND(Sheet2!A3,2))) となってズレてしまいます。 これを300行ほど作らなければならないのです。 数式、1行のセルを2行の結合したセルにコピペできる方法、もしくはマクロや他の関数があれば教えていただきたいです。 わかりにくくて申し訳ありませんが、お願いします。
- ベストアンサー
- Visual Basic
- 条件を指定して範囲指定をできるエクセル関数はありますか?
関数でCOUNTIFがありますが、この関数では自分が指定した範囲の中から条件にあうデータの個数を数えられます。でもその範囲指定自体を別の関数等を利用して自動的に(毎日ではなく)範囲指定したいのですが教えていただけませんでしょうか? 具体的には、 12/29 +1000 12/29 -1000 12/29 +1000 12/29 +3000 12/30 +5000 12/30 +2000 12/31 0 12/31 -2000 12/31 -2000 といったデータの場合に、別シートに下記のような日付だけのシートが存在します。COUNTIFを使用して上記データすべてを選択すればそれぞれの日のプラスのデータ数、マイナスのデータ数は計算可能ですが、各日のデータ数がまちまちで毎回下記表の右欄にCOUNTIF関数をうちデータの選択をせずに自動的に各日だけのプラス、マイナスの各々のデータ数を数えられるように範囲を指定できる関数はありますでしょうか? また関数のほかに方法はありますでしょうか? 12/29 12/30 12/31
- 締切済み
- オフィス系ソフト
- EXCELの計算式がこわれる(?)
EXCELを教えてください。 [問題の表] ブック内にワークシートを3枚つくり、 1枚目にA~Sまで、1300行程度の表を作成 2枚目に1枚目から品目毎の値引金額抽出(SUMIF) 3枚目に1枚目から得意先毎の売上、原価抽出(SUMIF) しています。 1枚目は別の表よりデータを貼り付け、使いやすいように マクロを使って、移動・削除をしています。 (マクロは分からないので新規マクロ作成で作りました) [問題の起こるとき] 1枚目のマクロを実行すると、2,3枚目の計算式のSUMIFで 指定している列がおかしくなってしまいます。 マクロ実行後の行、列を参照して2,3枚目は集計して欲しい ときは、どういった対処をすれば良いでしょうか? EXCELには詳しくなく、マクロも分かりませんが、どなたか教えてください。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
お礼
まさにこれです。問題解決しました。 ありがとうございました。