No.2ベストアンサー
- 回答日時:
こんにちは。
データベース関数でしたら、複数のセルの領域を使って、
・横に並べると and 検索 (論理積)
・縦に並べると or検索 (論理和)
というように、基本どおりにしたらよいのではありませんか?
データベース関数というのは、いまひとつ、洗練されていない関数だとは思います。クライテリアの引数の型が、Range(セル)型というのは、どうにも間が抜けているなって思います。時代的な関数のひとつです。
>"" = < > * + 等を使つた 条件式で やりたいです
その質問に至るだけの、理屈や説明がないのでどう答えてよいか分かりません。クライテリアの場所の領域が邪魔なのか、それとも、単なる仕様に対する希望なのか、質問に具体性がありません。
ただ、最近は、みなさん、SUMPRODUCT を使っているようですから、そういう使い方もあると思います。
この回答への補足
>時代的な関数のひとつです。
済みません どういう意味ですか?
SUMPRODUCT 論理演算式ですつきりして 気持ちがいいですね。
できました。SUMPRODUCTを使えば 色々な事が出来そうですね。有難うございました。
No.5
- 回答日時:
こんにちは。
Wendy02です。>LOTUSを使つていましたので、LOTUSで出来る事は EXCELでも 出来ると思つてしまいます。
私も、そう思ってしまいます。
ただ、フィルタオプションなんかで、マクロを使うと、R1C1 方式しか使えないので、Microsoft ネイティブかなって思ったこともあるのですが、そうではないようですね。
>変数とか間接アドレスが使えないので 特定のセルを 変数として使うのが いいですか?
特定のセルを 変数 というのは、「挿入-名前-登録」という方法ですか?
それは可能なのですが、昨日、なぜ、クライテリアがセルではいけないのか検証してみたのですが、クライテリアを、どうも、それぞれの行に当てはめて、計算しているということが分かりました。クライテリアに間接的に参照されるアドレスは、相対参照式で、それぞれの行に当てはめるという計算なのです。そういう計算式ですと、どうやら、セル自体を使わざるを得ないなっていう気がしました。
#1さんの
http://www.takenet.or.jp/~hayakawa/excel0/u-tane …
の「喫煙,飲酒等」の嗜好品アンケートを例に取ると
肥満 喫煙 飲酒
1 1 1
の
=DSUM(L2:R8,6,L11:N12)
は、
=SUMPRODUCT((Q3:Q8=1)*(M3:M8=1)*(N3:N8=1))
に置き換えることができますし、また、
それは、誰かということを検索したければ、以下のような数式で、
=INDEX(L1:L8,SUMPRODUCT((Q3:Q8=1)*(M3:M8=1)*(N3:N8=1)*ROW(L3:L8)),1)
"D" と出すことができます。
No.4
- 回答日時:
こんにちは。
#2 です。余計な薀蓄かもしれませんが、お答えさせていただきます。
>>時代的な関数のひとつです。
>済みません どういう意味ですか?
もともとは、検索する関数は、LOOKUP やINDEX 関数しかなかったのですが、それでは遅くてとても使いづらいということで、1980年代後半に、データベース関数が生まれたわけです。それと一緒にあるのが、フィルタオプションです。それが登場してきたときには、画期的だったにしても、現在になると、メモリも潤沢で、計算スピードも速くなったわけで、必ずしも、データベース関数を使う必要性はなくなった、と思うのです。
>DSUMの中に入れる方法もあるようなきがしてきました。
私は、無理だと思います。引数の型が違うからです。(もしかしたら、できるという人がいるかもしれません。ただ、私は試してみましたが、うまく行きませんでした。)
私自身も、なぜ、クライテリアを、引数の中に封じこめることができないのか、不便さを感じています。数式を参照する方法は、私も使いますが、それは、外部セル以外はできません。なぜ、外部のセルを必要とするのか、たとえば、配列数式で、クライテリアを入れられないのか、と思います。フィルタオプションも同様です。それで、SUMPRODUCT をお勧めしたわけです。
私は、ユーザー定義関数を作ることはできても、このデータベース関数は、少し特殊な方法を使っているようで、スピードが桁外れに速いのです。だから、とても、ユーザー定義関数では、このようなスピードを確保できないのです。
有難う御座います。LOTUSを使つていましたので、LOTUSで出来る事は EXCELでも 出来ると思つてしまいます。変数とか間接アドレスが使えないので 特定のセルを 変数として使うのが いいですか?
No.3
- 回答日時:
[ANo.1この回答へのお礼]に対するコメント、
「クライテリア をセルを使わずに表現したい」の意味が理解できないけど、条件式を使ったやり方を紹介しておきます。(ASIMOVさんが紹介された URL に記載されている例を参照しています)
肥満で喫煙 かつ 飲酒の人数
=DSUM(L2:R8,6,P11:P12)
ここに、P11 は空白セルとし、セル P12 に次式を入力
=AND(Q3=1,M3=1,N3=1)
肥満で間食し かつ 運動しない人
=DSUM(L2:R8,4,P14:P15)
ここに、P14 は空白セルとし、セル P15 に次式を入力
=AND(Q3=1,O3=1,P3=0)
喫煙の人 または 飲酒を嗜み塩味を好む肥満の人
=DSUM(L2:R8,2,P19:P20)
ここに、P19 は空白セルとし、セル P20 に次式を入力
=OR(M3=1,AND(N3=1,R3=1))
男性で BMI が 25超 かつ γ-GTP が 56以上の人
=DSUM(A1:M25,13,R3:R4)
ここに、R3 は空白セルとし、セル R4 に次式を入力
=AND(B2="男",C2>25,K2>=56)
ここに、B列に性別が、C列に BMI値が入力されていると仮定
最高血圧が 140超の人 または 最低血圧が 90超で総蛋白が 8超の人
=DSUM(A1:M25,13,R9:R10)
ここに、R9 は空白セルとし、セル R10 に次式を入力
=OR(F2>140,AND(G2>90,H2>8))
【お断り】上の内容が理解できなくて質問される場合は、具体的にどの部分かを明記してください。単に「分かンな~い」とか「うまく行かない」だけでは駄目です。
mike_g 様
色々テクニックを ご存知ですね。
<=DSUM(L2:R8,6,P11:P12)
6 の数字 間接アドレスのきざしが?あるいは もう使つておられるのでは?
<P11 は空白セルとし、セル P12 に次式を入力
=AND(Q3=1,M3=1,N3=1)
DSUMの中に入れる方法もあるようなきがしてきました。
有難うございます。
No.1
- 回答日時:
正にこれです。 クライテリア をセルを使わずに表現したいのです。
例 =dsum(A1:E10,D2,クライテリア セルの範囲を使わずに表現したい) の方法を探しています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelについて A1からA12まで、1月〜12月と入力し、 B1からB12の範囲に、C1とD1に 4 2022/05/26 22:48
- Excel(エクセル) COUNTIFSについて 2 2022/08/30 14:48
- Excel(エクセル) エクセル 条件に合う日付に入力された時間数の合計したい 4 2022/06/17 22:18
- Excel(エクセル) DSUMとSUMIFSについて。 1 2022/09/16 00:51
- Excel(エクセル) Excelのtextbox 1 2022/04/15 15:26
- Excel(エクセル) Excelでの複数条件のカウントについて 1 2022/09/25 07:40
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- Excel(エクセル) 【詳しい方教えて下さい】EXCEL条件に一致する値の複数抽出 9 2022/04/29 10:56
- Excel(エクセル) Excel コンボボックス バックカラー 1 2023/02/18 08:06
- その他(Microsoft Office) エクセルに関しての質問 2 2022/06/25 18:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【エクセル】IF関数 Aまたは...
-
エクセルで指定したセルのどれ...
-
エクセル 足して割る
-
Excelで数式内の文字色を一部だ...
-
貼り付けで複数セルに貼り付けたい
-
対象セル内(複数)が埋まった...
-
エクセル オートフィルタで絞...
-
【Excel】 セルの色での判断は...
-
セルをクリック⇒そのセルに入力...
-
excelのCOUNTIF関数で、『範囲=...
-
エクセルのセルの枠を超えて文...
-
EXCEL VBA セルに既に入...
-
セルの高さ(行高)を求めるには?
-
Excelでのコメント表示位置
-
エクセルの一つのセルに複数の...
-
(Excel)数字記入セルの数値の後...
-
エクセル “13ヶ月”を“1年1ヶ月...
-
EXCELのセルの中の半角カンマの...
-
公共建築工事 共通仮設費率 エ...
-
エクセルでオブジェクトを常に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで指定したセルのどれ...
-
【エクセル】IF関数 Aまたは...
-
対象セル内(複数)が埋まった...
-
エクセル 足して割る
-
Excelで数式内の文字色を一部だ...
-
貼り付けで複数セルに貼り付けたい
-
Excelでのコメント表示位置
-
セルをクリック⇒そのセルに入力...
-
EXCEL VBA セルに既に入...
-
excelのCOUNTIF関数で、『範囲=...
-
【Excel】 セルの色での判断は...
-
エクセル オートフィルタで絞...
-
エクセルのセルの枠を超えて文...
-
(Excel)数字記入セルの数値の後...
-
Excelで、「特定のセル」に入力...
-
エクセルの一つのセルに複数の...
-
複数のセルのいずれかに数字が...
-
excelの特定のセルの隣のセル指...
-
数式を残したまま、別のセルに...
-
ハイパーリンクの参照セルのズ...
おすすめ情報