- ベストアンサー
最終行に行くマクロを教えてください。
よろしくお願いします。 ------------------------------------- A列--B列--C列--D列 123--123--512--535 264--533--111 -----222 -----○--------○-- ----------------------------------------- 上記のような表があるとして、B列とD列の○の箇所に合計を出したいと思います。 合計を出す行は、固定されているのではなく、B列とD列のデータの多いほうの下の合計を出したのですが、 D列のほうが長いときには、END+方向キーとOffsetで何とか、合計を出したい行までセルを持っていくことはできるのですが、B列のほうがデータが多い場合は、一番下の行までセルを持っていくことができません。 と、オートSUMの操作をマクロに記憶をすると、合計範囲が絶対参照になってしまい、合計する範囲がそのつど変わってしまう場合の処理の仕方がわかりません。 上記のような表を、抽出機能で作成しており、たくさんの抽出結果の合計を出さなければならなく、現状は、一つずつ、合計を出しているしだいです。 使用ソフト EXCEL2000 Win2000
- みんなの回答 (5)
- 専門家の回答
関連するQ&A
- 最終行に合計(最終行が列によって異なる場合)
エクセルVBAに於いて質問させて頂きます。 タイトルにも書かせていただきましたが、 A列に行数可変のデータ(文字列)があり、 B列に行数可変のデータ(数字)があり、 A列の行数>=B列の行数の条件とき、 A列の最終行+2の位置のA列に文字で合計 A列の最終行+2の位置のB列にsumを表示する場合、 どのようにすれば出来ますでしょうか。 A列の最終行+2の位置のA列に文字で合計は With Range("A3") .End(xlDown).Offset(2, 0).Formula = "合計" End With でいけると思うのですが、 A列の最終行+2の位置のB列にsumを表示する場合どのようにすればいいのかわかりません。 ご教授のほどお願い致します。
- ベストアンサー
- オフィス系ソフト
- EXCELでデータが入っている最終行までの合計
現在、EXCEL2000で各月の全得意先の合計を求める式を作っています。 データは現在B列に得意先コード・C列に得意先名D列以降はVLOOKUP関数で別シートから求めた各月の得意先の売上金額を求めています。 D6セル:VLOOKUP(B6,'5月'!$B$6:$J$1500,9,0) 例えば、現在D6からD1149までにデータが入っており、別シートの得意先元リストの件数が増えれば、自動的に下の行にスライドするようになっています。その為、数行余分に予め関数を入れた空欄の行を作っています。 B6セル:OFFSET(元リスト!$B$6,ROW()-6,COLUMN()-2) 現在D1158にD6からデータの入っている最終行まで合計を関数で表示させたいのですがうまくいきません。ネットでも色々探しているのですが、私の検索の仕方が悪いのか中々見つかりません。 LOOKUP関数となにかを組み合わせて、得意先コード(B列)の空白になっている時、その一つ上のD列の行を参照できるようにできればいいんじゃないかとは思うのですが。 もし、いい方法があればご教示願います。
- ベストアンサー
- その他MS Office製品
- 行削除のマクロ
B列~F列にデータが入っていてB列の最終行の下セルを選択しクリップボードのデータを貼り付けた後、貼り付けたデータの最初の3行を削除するマクロを作っています。 Sub Macro1() ''Worksheets("Sheet1").Activate ' addrw = Range("b65536").End(xlUp).Offset(1).Row Cells(addrw, 2).PasteSpecial end sub これでB列の最終行の下にデータを貼り付けることまで出来たのですが貼り付けた最初の3行の削除の仕方がわかりません。 いい方法があれば教えていただけないでしょうか。 例えばB列の10行目まで既に入力されていた場合、11行目からクリップボードのデータを貼り付け(ここまでは上のプログラムで出来ました。)、11行目から13行目を削除したいのですがどうしたらいいでしょうか?
- ベストアンサー
- オフィス系ソフト
- Excel:決まったセルから常にあるセルの最終行の引き算
添付画像のA7~E7列に数値を入力していき、F列にB~Eの合計がSUM関数により表示されます。 必要に応じ、8行目以降にデータは累積していきます。 D4セルにC4からF列の常に最終行の引き算の数式を入れたいと思っています。 イメージは D4=C4-(F列の最終行)というものですが、具体的にどういう数式をD4セルに当てはめればよいでしょうか? 御教示宜しくお願い致します。
- ベストアンサー
- オフィス系ソフト
- データの最終行まで計算式をコピーするマクロ
エクセル2013を使用しています。 A列2行からとB列2行から各々 データ行が数百行あり、 C列2行に計算式を入力。 セルの右下フィルハンドルをダブルクリックすると、 例 C2:C600 の固定範囲で計算式がコピーできますが、 毎回このデータ行数が変わります。 計算式はあと4つありますので全部で5回繰り返しとなります。 マクロで最終行を検索してデータの最終行を見つけてコピーするように したいのです。 表のイメージ A B C D E F G H I J K L M 1 data datb 計算式1 計算式 計算式 計算式 計算式 2 ↓ ↓ 3 | 600 data datb 計算式
- ベストアンサー
- オフィス系ソフト
- Excel VBA B列を検索して1行下をコピぺ
はじめまして。 VBAを始めたばかりですが、自分ではどうにもならないので、教えていただければと思い、初めて質問致します。 A1~G1、1行目から1000行目まで各セルに数字がランダムに1つずつ入っているデーターSheet1があり、コマンドボタンを押すことによってMsgBoxに入力した数字をB列を下に検索していき、例えば、数字の8が入力されたら、B1から下にB列に8が出現したらそのセルの1つ下の行(A列~G列まで)をコピーしてSheet2に抽出したいと考えているのですが、なかなか出来ず、困っています。 イメージとして A B C D E F G H I 1 5 14 30 25 30 3 9 2 22 34 6 7 29 49 3 3 1 8 20 4 10 6 45 4 30 15 34 50 2 5 9 5 11 8 45 7 6 20 1 6 40 8 48 25 36 4 10 7 21 22 30 28 6 7 36 8 2 3 50 2 1 43 6 と、データがSheet1に仮にあって、8が入力されたなら4行目の 30 15 34 50 2 5 9 と 6行目 40 8 48 25 36 4 10、7行目 21 22 30 28 6 7 36という様に抽出されてSheet2に 上から順に貼り付けられる様にしたいので、皆様の御知恵をお貸しいただければと 思っております。かなり複雑かとは思いますが、どうか宜しくお願いいたします。 FINDやOFFSET、IF文、ループ等を使ってみましたが私のレベルでは全く話になりませんでした。 まだVBAかけだしなもので、なるべ簡単なくプログラムでお願いいたします。
- ベストアンサー
- その他(業務ソフトウェア)
- オートフィルタ後の、マクロでの値の参照に関して
オートフィルタ後の、マクロでの値の参照に関して 下記を悩んでいます。教えて頂ければ幸いです。 マクロで、あるデーター表から、オートフィルタを使用し、必要なデーターを 抽出し、マクロ内に戻し、その後の計算で使用したいと考えています。 A列、B列、C列にそれぞれ、検索条件を指定し、オートフィルタ後、下記のような状態になります。 参照したい値は、D列になります。 下記のような例では、2.5と2.7の値をマクロ内に戻したいです。 (例:オートフィルタ後) 1行 A▼ B▼ C▼ D 16行 ** ** ** 2.5 20行 ** ** ** 2.7 *2~15行目は見えなくなっています。 *17~19行目は見えなくなっています。 セルを参照し、マクロ内に戻すには、どのような構文(マクロ)の記述が必要でしょうか? 【備考】 ・上記の例では、セルはD16、D20となりますが、抽出条件によっては、行番号が変わってしまいます。 ・抽出後のD列のデーター数は、常に2つです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 【エクセル】特定の文字列(番号)の行だけ抽出したい
現在資料を作っていて、またもや困ったことがあったので教えてください。 特定の文字が含まれる行のデータを抽出するにはどうしたらいいのでしょうか。 具体的にいうと ____|A|B|C|D|E| [01]|F|1|0|3|5| [02]|G|0|2|5|7| [03]|H|0|3|4|8| 中略 [21]|F|0|0|9|6| [22]|G|6|4|5|1| [23]|H|3|3|2|2| 中略 [31]|F|2|2|4|6| [32]|G|5|3|7|9| [33]|H|8|2|6|4| 以下略 *[]の中身は行番号 一番上段のA B C D Eは列の軸 |はセルの区切りを示している のような表でGのBのところ(行番号が10n+2のところのA列)だけのデータを合計したいのです。 つまり上の表でいえば =A2+A22+A32+A42+A52…(=0+6+5+…)ということをしたいのですが 数が600行近くあるので手入力だとかなり面倒くさいのです。 SUM関数を使うのかなとも思いましたが、それでもセルの指定の面倒くささは変わらないし… 何か簡単にできるようにする方法がありましたらご教授お願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルマクロ、空白行(セル)の挿入
データがA、B、C、D、E列100行まであります。 このうちD、E列を除き、エクセルのマクロで1行ごとに空白で10行挿入したいです。 (A、B、C、D列のデータに空白セルを10行分挿入し、下にシフトするイメージ。D、E列はそのまま。) ご教授頂きたく、お願いします。
- 締切済み
- その他(Windows)
- エクセルのマクロを知りたい
エクセルで,たくさんのデータが入力された【シートa】があります。 新しく【シートb】を作成して,そこに空白の表(1)~(10)までを作成します。 (ちなみに表(1)は1行から始まり100行まで,表(2)は101行から始まり200行まで・・・・といった感じです) 【シートb】の表(1)には,【シートa】でA列に「1」が入力されているデータを抽出して,それをB列の昇順に並べて記入しなさい。同様に,表(2)には,【シートa】でA列に「2」が入力されているデータを抽出して,それをB列の昇順に並べて記入しなさい。・・・というのを表(10)まで続けます。 上記のような命令をボタン一つで操作できるようなマクロを教えて欲しいのです。 お願いします。
- 締切済み
- オフィス系ソフト
お礼
ありがとうございました。 最初 Worksheets(1).UsedRange.Row の意味がわからなかったのですが、先頭行がわかるんですね。大変勉強になりました。