- ベストアンサー
【Excel】ある文字列を含んだ行の数値をとりだしたい
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
次の方法は如何でしょうか。 D1セルに=IF(COUNTIF(A1,"*月計")=1,B1-C1,"")で下方向にコピーして下さい。
その他の回答 (2)
- Nouble
- ベストアンサー率18% (330/1783)
私も会社で もう少し複雑な処理をしたいと思っていたのです 「1つの検索対象の内に検索したい複数の語句の内の1つがあるのか調べる」 と、言う処理なのですが Excelって 検索する語句が1回に尽き1個なら何とでもなるのですが この様な 複数個検索して全て無いのか、または有る場合は何があるのか調べる て言うのは凄く不得意だと思っていたので 予てからはっきり言って諦めていたのですが、 もしかしたらと一縷の希望で質問のスレッドを立てたところ(参考URL) 素晴らしい回答を頂きました そこでお知らせに来ました この方が示して頂けた方向性の先には 素晴らしいExcelライフが輝いていると感じますよ 此方の質問に置き換えれば 月計どころか週計や四半期計・年度末締めなんてのも簡単に済みますよね
お礼
早速、URLを拝見しましたが、大変参考になりました。 活用させていただきます。 わざわざお知らせいただきまして、ありがとうございました。
- Nouble
- ベストアンサー率18% (330/1783)
豆知識として 余りスマートではないですが countifが一般的ですがFINDでも出来ますよ FINDはサーチに失敗すると#VALUE!を返しますので =IF(ISERR(FIND("月計",B:B,1)),"",Bn-Cn) とも書けますね おっとnは行番号に置き換えて使ってくださいね
お礼
回答ありがとうございます。 FINDでもできました!
関連するQ&A
- 複数列のデータ(数値&文字)を結合させて1列にまとめる方法
(1) 一行にA列、B列、C列があり、各行のいずれか1つの列に、必ずデータが入っています。(データの入っていないセルは「0」が表示) (2) データの入っているセルからデータを取り出し、D列の同じ行のセルに移します。 (3) 結果、D列には、A列~C列のデータが1列に表示される (例) No A列 B列 C列 D列 1 1A 1A 2 2B 2B 3 3C 3C 指定した複数列のデータを1列にまとめて表示する関数またはSQLを教えて下さい。 お忙しい所 大変恐縮ではございますが、何卒宜しくお願い致します。
- ベストアンサー
- その他MS Office製品
- EXCEL2003出納帳残高欄の、計算結果がある最終行の数値を取り出し
EXCEL2003出納帳残高欄の、計算結果がある最終行の数値を取り出したいのですが A B C D 1 日付 入出金 残高 2 繰越 30 3 8/1 100 130 4 8/2 -130 0 5 8/2 40 40 6 - 7 - 8 - 9 現在残高 40 途中には空白行はなく順に入力します 入力する行数は未確定です 残高は"0" の場合もあります C列2行目は 数式「=B2」 C列3行目から8行目までは 数式「=IF(B3=0,0,C2+B3)」 現在残高を表示したいのですが、 ここD列9行目には数式 「=LOOKUP(10^5,C3:C8)」 としてますが、 C列の6~8行目までは計算式が入ってるので、 その値”0”となってしまうようです。 また、 数式「=INDIRECT(ADDRESS(COUNT(C2:C8)+1,3))」 という式も入れてみましたが、”0”となってしまいます。 計算結果のある最終行の値 "40" にするにはどうしたらよいでしょうか?
- ベストアンサー
- オフィス系ソフト
- A列とB列の合計を行ごとにC列に表示させたい
お早うございます。エクセルのセルの計算で教えてほしいのですが、A列とB列の合計を行ごとにC列に表示させたいのです。例えばA1のセルに“1", B1のセルに“2"と入れます。それで、C1のセルに“=A1+B1"と入力します。そうするとC1のセルは“3”と表示されますよね。そこで同じように違った数字の合計を100行ほどそれぞれC列に表示させたいのです。セルごとではなく縦全部列ごとでもかまいません。宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- 条件を満たす行の、特定の列における最小値
以下のようなスプレッドシート(Excel)があります。 [A列] [B列] [C列] [D列] [E列] [1行]資材コード メーカー 単価 平均 最安 [2行]T1111 A 311 [3行]T1211 A 411 [4行]T1311 A 311 [5行]T1111 B 299 [6行]T1211 B 500 [7行]T1311 B 312 [8行]T1111 C 300 [9行]T1211 C 280 [10行]T1311 C 400 D列(D2~D10)には、 同じ資材コードの単価の平均が入ります。 これは、 SUMIF(A$2:A$10,A*,C$2:C$10)/COUNTIF(A$2:A$10,A*) (*には当該行番号が入る。) で、表現できました。 次にE列(E2~E10)には 同じ資材コードのもののうち、 最安となる単価を表示させたいのですが、 どう関数を組み合わせるのが、スマートなのかわかりません。 たとえば、E2セル、E7セル、E11セルは 資材コードT1111になっている行のうち、 単価(C列)が最低となる時の値を表示するようにしたいので、 C2セル=311、C7セル=312、C8セル=800のうち、最低である311が E2セル=311、E7セル=311、E8セル=311 にそれぞれ表示されるようにしたいのです。 わかりにくい説明で申し訳ありませんが、 疑義があれば、適宜補足しますので、指摘してください。 よろしくお願いいたします。
- 締切済み
- オフィス系ソフト
- 【Excel】関数でできますか?
Excel2003を使用しています。 E列→摘要欄 H列→借方金額 I列→貸方金額 K列→差引残高 1行 あ 100 2行 い 100 3行 う 500 4行 5行 月 計 600 100 500 6行 7行 8行 か 300 9行 き 400 10行 く 500 12行 月 計 900 300 1100 13行 累 計 1500 400 : : というふうに金額が入力されているとき、K列の差引残高に E列に“月 計”と入力されたら、 [直前の月 計の差引残高セル]-[借方金額]-[貸方金額]という 数式を入れたいのですが、どんな関数を使えばできますか? 上記の例でいくと、 K12セルに[=K5+H12-I12]の計算結果が表示されるように したいのですが。。。 よろしくお願いします。
- 締切済み
- オフィス系ソフト
- EXCELで数値の検索
excel2000です。 あるセル範囲の中から、数値の入っているセルを探し出し、 「計」の字のあるセルの前までその数値を繰り返す・・・という表を 作りたいのですが、どうしたらいいのかわかりません。 例) A3に「1」、B6に「計」が入っています。 A1からA5の範囲から数値の入っているセル(=A3)を探し出し、 C1:C5に「1」を並べる。 続いてA8に「2」、B11に「計」が入っていて、 C7:C10まで「2」を並べる。 という感じです。 A列の範囲は毎回変わり、B列の「計」の次の行から、 次の「計」の手前までの範囲です。 数値が入っている場所(A3やA8)も毎回変わります。 本当に困っています。 お力を貸してください。よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 【Excel】直前のある特定の文字を拾って計算したい
Excel2003を使用しています。 E列→摘要欄 H列→借方金額 I列→貸方金額 K列→差引残高 1行 あ 100 2行 い 100 3行 う 500 4行 5行 月 計 600 100 500 6行 7行 8行 か 300 9行 き 400 10行 く 500 11行 12行 月 計 900 300 1100 13行 累 計 1500 400 : : というふうに金額が入力されているとき、K列の差引残高に E列に“月 計”と入力されたら、 [直前の月 計の差引残高セル]+[借方金額]-[貸方金額]という 数式を入れたいのですが、どんな関数を使えばできますか? 上記の例でいくと、 K12セルに[=K5+H12-I12]の計算結果が表示されるように したいのですが。。。 関数でもマクロでも構いません。マクロでしたら、初心者ですので 参考までに一例を示していただけると嬉しいです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- EXCEL:種別ごとに数値の和を求める式
種別ごとに和を集計する必要があります。 種別ごとの数値を求めるためには、各計の所にどのような式をかきたらよいのでしょうか。 下記に例:Dのセルの式 aだけでよい。 A列 B列 C列 D列 種別 数値 種別 計 a 1 a種計 1 b 4 b種計 13 c 5 c種計 12 c 7 b 9
- ベストアンサー
- オフィス系ソフト
- excel関数を用いてある行の範囲内の数値のみを違う行に抽出し、同じ列に対応する値も引っ張ってくることは可能ですか?
A B C D 1 33 180 2 58 300 3 89 310 4 152 240 5 205 74 上のような表になっている時に、EXCEL関数を用いて、[A]行の「60以上、180以下の数値」のみをC列に引っ張ってきて、なおかつ[A]行のそれぞれの値に対応する[B]行の値をD行に引っ張ってくることは可能でしょうか? 理想的な結果として A B C D 1 33 180 58 300 2 58 300 89 310 3 89 310 152 240 4 152 240 5 205 74 というようになってほしいのです。 オートフィルターの範囲指定を用いると、C行に範囲内の値を引っ張ってくる事は出来たのですが、関数ではない為、他の表に応用が効かず、毎回フィルターをかけなくてはいけなかったです…そのため出来れば関数を使いたいのですが、何か方法は無いものでしょうか…
- ベストアンサー
- その他MS Office製品
- Excel2002でセルへの数値代入
使用しているのはExcel2002なんですが 関数などを使用して空白セルへ数値及び文字列を 代入することって可能でしょうか? 例を挙げると、 セルA1に7という値を入力すると、 セルC1にある関数が「10-A1」という計算を行って セルB1に3という値を返すようにしたいのです。 また、セルB1に4という値を入力すると、 セルC1で計算を行い、セルA1には6が返る。 このようにセルA1、B1ともに、人の手で数値の 入力が行われる可能性があるので、表示部分のセルに 関数式を記述せず、空白としておく。 C1に入力する関数は IF(B1="",10-A1,10-B1) として、この結果を、またIFなどを使って 空白の方のセルに入力してあげればいいかなー というところまでは考え付いたのですが・・・ どなたか教えてください。
- ベストアンサー
- オフィス系ソフト
お礼
早速回答いただきましてありがとうございました。 おかげさまでうまくいきました~♪