計算式をセルH3~H14に入れたいです。

セルE3にロジックパターンを1~5まで入力。

関数でセルH3~H14の順位を出したいのですが、関数がわかりません。
セルH3~H14まで同じロジックパターンで順位を出します。

H3の場合、ロジックパターンは「1」、サインNoはG3にあり「7」
ロジックパターンsheetのB列を参照すると、「7」はセルB8にあり、
横にスライドしてA列の順位をみると「5位」です。

この5位という結果をセルH3に出るようにしたいのです。
サインNOは変動します。
(前回の質問を見ていただけるとわかるのですが、G3~G15にも関数が入ってます)

そして、隣のセルに、
1位~4位は★★★
5位~8位は★★
9位~12位は★  の表示をしたいのですが、どうしたらいいでしょうか?

「EXCEL関数、別シートを参照して値を返」の質問画像

質問者からの補足コメント

A 回答 (4件)

H3にはコレを


=MATCH($G3,OFFSET(ロジックパターン!$A$4,,$E$3,12,),0)

I3にはコレを
=LEFT("★★★",4-ROUNDUP(H3/4,0))

J3にはコレを
=MATCH($G3,OFFSET(ロジックパターン!$A$4,,$E$4,12,),0)

MATCH関数でターゲットとなるG3の数値をロジックパターンから探し、見つかったセルの高さを表示しています。
高さが5のため5位でよいのかと思います。5位と表示したいようであれば表示形式を変えたりCONCATENATEを使ったりしてください。
検索範囲が可変となるため、OFFSETで列をずらしています。
    • good
    • 0
この回答へのお礼

ありがとうございます。
脳があまり働かなくて、教えていただいた式をコピーして貼り付けたら欲しい答えが出るという、この状況が一番助かりました<(_ _)>

お礼日時:2017/06/15 19:22

「簡易エラー処理しかしていません」は何の事を指すのか、不勉強でわからないんですが、助かりました。


G3セルに入力がない場合は表示しない
です

>今ロジックパターンは、セルE3の「1」のみ使用してます。
>これが、E4に「2」のロジックパターンを指定して、
>J列のJ3~J14にロジックパターン2を使用した順位を表示したい時は、
>計算式のどこを修正したらいいんでしょうか?
数式の内側
=INT((ROW(H3)-3)/12)*12+3
のみ3行目のどこかに貼り付け、下へオートフィル
これで動きが分かると思います
y=ax+b でxは整数のグラフを考えればよい
上記は、b=3なので 4に変えれば4行目を参照する
    • good
    • 0
この回答へのお礼

説明ありがとうございます。私の頭が豆腐なので、理解が追いつきませんでした。
素直に、答えを教えてくださいを言えばよかったです;;
ご親切に感謝します。

お礼日時:2017/06/15 19:15

先ほどの回答はH3セルに入力する数式です。


>1位~4位は★★★
もう一個ありましたね。
こちらも別表を作り、INDEXとMATCH、または、VLOOKUPを使ったらいかがでしょうか?

遊びで I3セルに
=REPT("★",5+(LOOKUP(0,-LEFT(D6,{1,2}))-4)/4)
    • good
    • 0
この回答へのお礼

ありがとうございます。確かに別表作るのもアリですね

お礼日時:2017/06/15 19:16

簡易エラー処理しかしていません


=IF(G3="","",INDEX(Sheet2!$A$4:$A$15,MATCH(G3,INDEX(Sheet2!$B$4:$F$15,,INDEX(E:E,INT((ROW(H3)-3)/12)*12+3)),0)))
INDEXの第2引数を0または入力しないのがみそ
    • good
    • 0
この回答へのお礼

すごい!
ちゃんと値がでました、ありがとうございます。
「簡易エラー処理しかしていません」は何の事を指すのか、不勉強でわからないんですが、助かりました。

ちなみに質問を重ねてすみせんが、
今ロジックパターンは、セルE3の「1」のみ使用してます。
これが、E4に「2」のロジックパターンを指定して、J列のJ3~J14にロジックパターン2を使用した順位を表示したい時は、計算式のどこを修正したらいいんでしょうか?

お礼日時:2017/06/15 17:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aと関連する良く見られている質問

QEXCEL関数、判別?

12星座の順位付けをしたいです。
まず、基点となる星座が、日によって変わります。
1牡羊座
2牡牛座
3双子座
4蟹座
5獅子
6乙女座
7天秤座
8蠍座
9射手座
10山羊座
11水瓶座
12魚座
の順の日もあれば、

1牡牛座
2双子座
3蟹座
4獅子
5乙女座
6天秤座
7蠍座
8射手座
9山羊座
10水瓶座
11魚座
12牡羊座

の日もあります。
牡羊座を基点とする日は、魚座は12番目、牡牛座を基点とする日は、魚座は11番目です。
基点となる星座が1、その次の星座が2となり、以降順繰りに回すだけなんですが
いちいちコピーしたりずらしたりするのに疲れました。

基点星座を選んだら、自動的に判別してくれる関数はないでしょうか?
ちなみに、今作ってるファイルの一部を添付します。

どうぞよろしくお願いいたします。

Aベストアンサー

>基点星座を選んだら、自動的に判別してくれる関数はないでしょうか?
セルG3に =INDEX(Sheet2!$A$2:$L$13,ROW(A2)-1,MATCH($B$3,Sheet2!$A$1:$L$1,0)) の式を入れて、下方向まで式をオートフィルコピーします。
一応あなたが示された画像をそのまま作成し、(Sheet2も)実際やってみましたのでお試しください。

※セルB3の起点星座をいちいち手入力しているのでしたら、次の方法でドロップダウン出来るようにしてみると、もう少し楽になるかも。
ドロップダウンの作り方。
①セルB3をクリックしておきます
②「データ」タブから「データツールグループ」内の「データの入力規則」と書いてあるところの上のアイコンをクリック
③「設定」タブより「入力値の種類」の「すべての値」の右側の▼をクリックして「リスト」を選択
④「元の値」の枠内をクリックしてSheet1の12星座を入力している範囲を選択(F3~F14まで)
⑤選択し終わったら「OK」を押します。
これでセルB3をクリックすると▼の表示が現れドロップダウンで各星座を選択できるようになります。
星座をいろいろ選択することで、順番も自動で変わります。

>基点星座を選んだら、自動的に判別してくれる関数はないでしょうか?
セルG3に =INDEX(Sheet2!$A$2:$L$13,ROW(A2)-1,MATCH($B$3,Sheet2!$A$1:$L$1,0)) の式を入れて、下方向まで式をオートフィルコピーします。
一応あなたが示された画像をそのまま作成し、(Sheet2も)実際やってみましたのでお試しください。

※セルB3の起点星座をいちいち手入力しているのでしたら、次の方法でドロップダウン出来るようにしてみると、もう少し楽になるかも。
ドロップダウンの作り方。
①セルB3をクリックしておきます
②...続きを読む

Q「年月」ごとにカウント

お世話になっております。

C列には、『初回入会年月日』として入力しております。
E列から右方向へ、「2017年1月」を始めとし「年月」を表記しております。
この「年月」ごとの欄に、C列に列記している「初回入会年月日」を検索して
該当する「年月」の件数を表示させる仕組みです。

例えば、図表から
C列の「初回入会年月日」には、

「2017年1月17日」
「2017年1月19日」
「2017年1月17日」
「2017年1月31日」

1月には4件あり、それをE2に、「4」と表示させるといった感じです。

C列の「初回入会年月日」を検索し、該当する「年月」の件数を表示させる関数式を教えてください。
m(__)m

※補足説明
・C列の表示形式は、「2017/○/○」と打込み、ユーザー定義「yyyy"年"m"月"d"日"」で設定しております。
・「年月」の項目の表示形式は、年頭の「2017/1/1」と入力してユーザー定義で
「yyyy"年"m"月"」と設定し、
 2月以降は、「2017/2/1」と打ち込み、それをユーザー定義「m"月"」で設定
・C列のデータ件数 500件 $C$2:$C$501

お世話になっております。

C列には、『初回入会年月日』として入力しております。
E列から右方向へ、「2017年1月」を始めとし「年月」を表記しております。
この「年月」ごとの欄に、C列に列記している「初回入会年月日」を検索して
該当する「年月」の件数を表示させる仕組みです。

例えば、図表から
C列の「初回入会年月日」には、

「2017年1月17日」
「2017年1月19日」
「2017年1月17日」
「2017年1月31日」

1月には4件あり、それをE2に、「4」と表示させるといった感じです。

C列の「初...続きを読む

Aベストアンサー

No.2・3です。

まずNo.2の方に関して・・・
SUMPRODUCT関数の範囲内に「文字列」が含まれているというコトはないですか?
文字列が含まれている場合はエラーになります。

No.3に関して・・・
C列と1行目の日付はどちらもシリアル値になっているのですよね?
そして1行目の日付はすべて各月の1日のシリアル値だというコトなのであのような数式にしました。

お示しの画像通りの表を手元のExcelで確認し、投稿した数式です。

こちらではE2セルにちゃんと「4」が表示されています。

※ 502行目以降に数値データがあるととんでもない結果が返るコトがあります。
No.3の数式の範囲を501行目までに限定し
=COUNTIFS($C2:$C501,">="&E1,$C2:$C501,"<"&EDATE(E1,1))

としたらどうなりますか?m(_ _)m

QA列のセルを参照して、B列の文字列を強調表示する方法

A列に単語(検出単語)
B列に文章(本文)
を入れて、

B列の文章中に、A列の単語を含む場合、
マクロで赤色の太字設定にできますでしょうか。
(B列の文章は、A列の単語が複数入る場合があります)

A列の単語は数千行で、順次追加していきます。
B列の文章は2000行程度です。

表記ゆれと同音異義語・同訓異字の検出用です。
ワードの校正機能は検出したり、しなかったりで…

Aベストアンサー

Excelのマクロでないとダメなのでしょうか?

検出単語の一覧さえあれば、Wordのマクロでも同じ結果にできます。
マクロを提示するよりもアドインを紹介しますので、これを利用しては。
http://ameblo.jp/gidgeerock/theme-10045526337.html
http://www.vector.co.jp/soft/winnt/writing/se498511.html

Qエクセルシート間の数値抽出方法

どなたかとの関連質問ですが、=IFERROR(・・・数式にて
シート1に随時入力(担当者、品名、価格)しながらデータベースとして保存しつつ、
同時進行で、別シート2に該当担当者ベースで残り品名、価格を自動抽出する方法を教えて下さい。
*シート1からシート2への抽出はできましたが、
 引き出された数値が、該当担当者以外の名前も含まれていたり、データベースとの件数が一致しません。
*例:平成君のみの抽出  シート1           シート2 結果
 ・平成君 ペン 100円          平成君 ペン 100円            
 ・昭和君 万年筆 1000円        平成君 消しゴム 80円
 ・平成君 消しゴム 80円      →  大正君 カーテン 2000円
 ・大正君 カーテン 2000円       
 ・平成君 鉛筆 300円 
 と、なります。ご教示下さい。

Aベストアンサー

肝心な数式を提示してくれっていうの忘れてました。(^^;
1行目以外マクロの記録でフィルタアドバンスドフィルター(添付図参照)
Sheet2!A2セルを変更すると抽出されます

Sheet2のシート見出しを右クリック - コードの表示
下記貼り付け
Private Sub Worksheet_Change(ByVal Target As Range)
    '↓1行だけ追加
    If Target.Address <> "$A$2" Then Exit Sub

    'Sheet2を選択(不要だけど一応)
    Sheets("Sheet2").Select
    '4行目を選択
    Rows("4:4").Select
    '[Ctrl]+[Shift]+[↓]
    Range(Selection, Selection.End(xlDown)).Select
    '行の削除
    Selection.Delete Shift:=xlUp
    'A2セル選択
    Range("A2").Select
    ’フィルタオプションの設定
    Sheets("Sheet1").Columns("A:D").AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Range("A1:A2"), CopyToRange:=Range("A4"), Unique:=False
End Sub

肝心な数式を提示してくれっていうの忘れてました。(^^;
1行目以外マクロの記録でフィルタアドバンスドフィルター(添付図参照)
Sheet2!A2セルを変更すると抽出されます

Sheet2のシート見出しを右クリック - コードの表示
下記貼り付け
Private Sub Worksheet_Change(ByVal Target As Range)
    '↓1行だけ追加
    If Target.Address <> "$A$2" Then Exit Sub

    'Sheet2を選択(不要だけど一応)
    Sheets("Sheet2").Select
    '4行目を選択
    Rows("4:4").Select
    '[Ctrl]+[Shift]+[↓]
...続きを読む

Qエクセルで「○○」を含む文字列があった場合はA、「△△」を含む文字列があった場合はBとしたい場合

エクセルで「○○」を含む文字列があった場合はAを返し、「△△」を含む文字列があった場合はBを返したい場合どのような式にすればいいでしょうか?

C列に「○○」を含む文字列があった場合はAを返す場合、
=IF(COUNTIF($C$1,"*○○*"),"A")
としていたのですが、
「△△」を追加したい場合
=IF(COUNTIF($C$1,"*○○*"),"A")+(COUNTIF($C$1,"*△△*"),"B")では成り立ちませんでした。

よろしくお願いします。

Aベストアンサー

=IF(COUNTIF($C1,"*○○*"),"A",IF(COUNTIF($C1,"*△△*"),"B",""))
でした、最後の ,が多いですね。

Qエクセル 関数 教えてください!

添付画像のようにしたいのですが、エクセルでそんなことが出来るのか分かりません。
賢者の皆様、知恵をお貸しください。

詳細はこんな感じです。

①②③は条件付書式ということはなんとなく分かります!
僕なりに一生懸命悩んでしましたが、浅知恵のためお手上げ状態です。。

①=予想と結果が1番で一致したときに、予想列の該当セルを黄色に塗りつぶす
②=予想と結果が2番で一致したときに、予想列の該当セルを赤色に塗りつぶす
③=予想と結果が3番で一致したときに、予想列の該当セルを緑色に塗りつぶす
④=予想A、予想B合計の統計点数を出す(1番予想が3点、2番予想は2点、3番予想は1点)
⑤=④を数字の大きいもの順に抽出する(同じ値は表示順で抽出)
⑥=1番予想が予想通りになった確率を求める
⑦=2番予想が予想通りになった確率を求める
⑧=3番予想が予想通りになった確率を求める

よろしくお願いいたします!!!!!!

Aベストアンサー

こんばんは!

①~③は大丈夫というコトなので・・・

④~⑤についてだけ
まず④は
↓の画像のように作業用の表を作成するのが簡単だと思います。
「作業表1」は1番~3番の「得点?」の表を作成しておきます。
K2セルに
=IF(B9="",0,VLOOKUP(B9,$O$2:$P$4,2,0))+IF(F9="",0,VLOOKUP(F9,$O$2:$P$4,2,0))

という数式を入れ列・行方向にフィルハンドルでコピー!

⑤について
「作業表2」のO11セルに
=COUNTIF(K$2:K$8,">"&K2)+COUNTIF(K$2:K2,K2)

という数式を入れフィルハンドルで右へ3列分・下へ7行コピーしておきます。
そしてK11セルに
=INDEX($J$2:$J$8,MATCH(ROW(A1),O$11:O$17,0))

という数式を入れ列・行方向にフィル&コピー!
これで画像のような感じになります。

※ 作業用の表が目障りであれば遠く離れた列にするか
非表示にしておいてください。

⑥~⑧については
0%か100%のどちらかになってしまいますよね?
それでも良いのであれば・・・
B17セル(%表示にしておく)に
=(VLOOKUP($A17,$A$3:$D$5,COLUMN(),0)=INDEX($A$9:$A$15,MATCH($A17,B$9:B$15,0)))*1

という数式を入れフィルハンドルで列・行方向にコピー!

B17セルを選択 → B17セルの四辺にマウスポインタを移動させ上下左右の小さな矢印になったところで
Ctrlキーを押しながらF17セルまでドラッグ&ドロップ
数式内の「COLUMN関数」だけに手を加え
=(VLOOKUP($A17,$A$3:$D$5,COLUMN(B1),0)=INDEX($A$9:$A$15,MATCH($A17,F$9:F$15,0)))*1

という数式にして、これも列・行方向にフィル&コピー!

こんな感じではどうでしょうか?m(_ _)m

こんばんは!

①~③は大丈夫というコトなので・・・

④~⑤についてだけ
まず④は
↓の画像のように作業用の表を作成するのが簡単だと思います。
「作業表1」は1番~3番の「得点?」の表を作成しておきます。
K2セルに
=IF(B9="",0,VLOOKUP(B9,$O$2:$P$4,2,0))+IF(F9="",0,VLOOKUP(F9,$O$2:$P$4,2,0))

という数式を入れ列・行方向にフィルハンドルでコピー!

⑤について
「作業表2」のO11セルに
=COUNTIF(K$2:K$8,">"&K2)+COUNTIF(K$2:K2,K2)

という数式を入れフィルハンドルで右へ3列分・下へ7行コピーしておきま...続きを読む

Q複数のexcelファイルを一つにするには

formatが全く同じとは言えないが、月報があります。
これを結合して一つのファイルにしようと思っています。
一件ずつを呼び出し、コピーする方法しか思い浮かびません。
それでは年報に直すのに、同じことを12回する必要あります。
列幅や列数が異なる場合があるかも知れません。
その場合は一旦結合した後、個別に修正しようと思っています。
良い方法ありませんか。

Aベストアンサー

何度実行しても良いようになっていますのでもう一度最初から実行してみてください。
ちなみに、マクロを入れたファイルは開始時と終了時に毎回消去しているので何も表示されないはずです。出来上がった「友の会・観察会資料2017.xlsx」はどうなっていますか?

まさかとは思いますが、このマクロを記録したファイルの名前は「友の会・観察会資料2017.xlsx」や「友の会・1月観察会資料2017.xlsx」などにはしていませんよね?

多分間違いだと思うので勝手に直しましたが、もちろん「友の会・1月観察会資料2014.xclx」などは「友の会・1月観察会資料2014.xlsx」などの間違いですよね?

Qexcelで条件に合うよう、複数のセルの合計を求めたい

例えば、次のように並んでいるセルの数値があるとします。

1515
2748
540
5509
2195
680
7142
305
5042
530
667
325
9950
4800

その合計が30000以上で、かつ、最小の数字となるよう、複数のセルを選択したいと思いますが、これを実現できる関数はありますか?

Aベストアンサー

いわゆる「ナップザック問題」と呼ばれる種類の問題になると思います。

14個を選択する/しないなら、総当りしても16384個ですから、力技でも行けるかも。
画像を参考に、
1行目にデータの数値を横並び。
2行目に0~13の固定値を右から
3行目に2の0乗~2の13乗(8192)の固定値を右から
A列に0~16383の固定値
で、

B4:O16387の範囲に、
B4:=MOD(INT($A4/B$3),2)
をコピペして2進数の各桁の値を

P4:P16387の範囲に、
P4:=SUMPRODUCT($B$1:$O$1,B4:O4)
をコピペして、2進数の各桁のビットとデータの数値の積和

で、全16384通りの計算が行われるので、A4:末尾を選択して並べ替えすると、
合計が30002となる、
1515
2748
2195
680
7142
305
667
9950
4800
が確認できるとか。

--
もっと数値の数が増えると、この方法では厳しいので、

ナップザック問題をExcelで解く
http://www.geocities.co.jp/SiliconValley-Oakland/8139/

みたいなプログラムで解くような事になります。


条件が違うのでプログラムはそのまま使えませんが、似た質問。

エクセルで、「袋詰め問題」を解きたい - Excel(エクセル) 解決済 | 教えて!goo
https://oshiete.goo.ne.jp/qa/1255891.html

いわゆる「ナップザック問題」と呼ばれる種類の問題になると思います。

14個を選択する/しないなら、総当りしても16384個ですから、力技でも行けるかも。
画像を参考に、
1行目にデータの数値を横並び。
2行目に0~13の固定値を右から
3行目に2の0乗~2の13乗(8192)の固定値を右から
A列に0~16383の固定値
で、

B4:O16387の範囲に、
B4:=MOD(INT($A4/B$3),2)
をコピペして2進数の各桁の値を

P4:P16387の範囲に、
P4:=SUMPRODUCT($B$1:$O$1,B4:O4)
をコピペして、2進数の各桁のビットとデータの数値の積...続きを読む

Qエクセルの式がわかりません、教えてください。

fujillinさん解り易くしました。

報告書を作成する際、入力内容から、A(業務報酬)
とB(預り金)を選ばせようとしていますが、うまく表示されません。どこがいけないのでしょうか?

パターンは4つありますが、
もし、$AP$7="×" ×で(請求書が弊社宛ではなくて)
NOT('!$AL$7="")文字式が空欄じゃなかったら(下請会社名の記載が有ったら)
B =$V$18(預り金)

もし、$AP$7="×" ×で(請求書が弊社宛ではなくて)
NOT('!$AL$7="")文字式が空欄じゃなかったら(下請会社名の記載が無かったら)
この事例はあり得ませんので削除

もし、$AP$7="○" ○で(請求書が弊社宛)
('!$AL$7="")文字式が空欄だったら(下請会社名の記載が無かったら)
A =$V$19(業務報酬)金額的には100%
もし、$AP$7="○" ○で(請求書が弊社宛)
NOT('!$AL$7="")文字式が空欄じゃなかったら(下請会社名の記載が有ったら)
A =$V$19(業務報酬)金額的には50%

を選ばせようとしています。

疑問点の $AT$7=(支払金額)は上記の式に関係ないものとして削除しました。

以下の文書では、もし、$AP$7="×"(請求書が弊社宛ではなくて)で $AT$7=""(支払金額の記載が無かったら)A=$V$19(業務報酬)

もし、$AP$7="○"(請求書が弊社宛で)、,NOT($AL$7==""(下請会社名の記載が有ったら)、A=$V$19(業務報酬)
そうでなければ、B=$V$18(預り金)

=IF(AND($AP$7="×",$AT$7=””),$V$19,IF(OR($AP$7="○",NOT($AL$7="")),'$V$19,$V$18))

改善策1として
=IF($AP$7="×",$V$18,$V$19)を入れてみましたが、
もし請求書が弊社宛では無ければ、預り金、そうでなければ業務報酬

もし、$AP$7="○" ○で(請求書が弊社宛)
($AL$7="")文字式が空欄だったら(下請会社名の記載が無かったら)
A =$V$19(業務報酬)
がうまくいきません。


改善策2として
=IF(OR($AP$7="○",NOT($AL$7="")),$V$18,$V$19)で作成しましたが、間違っていました。
(請求書が弊社宛)または(下請会社名の記載が有ったら)、業務報酬、そうでなければ預り金


パターン例
請求書が弊社宛 請求書が弊社宛じゃない
下請会社有 業務報酬 預り金
下請会社無 業務報酬 -

fujillinさん解り易くしました。

報告書を作成する際、入力内容から、A(業務報酬)
とB(預り金)を選ばせようとしていますが、うまく表示されません。どこがいけないのでしょうか?

パターンは4つありますが、
もし、$AP$7="×" ×で(請求書が弊社宛ではなくて)
NOT('!$AL$7="")文字式が空欄じゃなかったら(下請会社名の記載が有ったら)
B =$V$18(預り金)

もし、$AP$7="×" ×で(請求書が弊社宛ではなくて)
NOT('!$AL$7="")文字式が空欄じゃなかったら(下請会社名の記載が無かった...続きを読む

Aベストアンサー

またしても添付画像が判別できないですけど。
細かく書いても表示される画像は縮小されてしまうので、
それでもわかるように工夫(画像をトリミング;必要な部分以外は切り捨てる)する必要があります。
その方法は質問に関係ないので省きます。

画像のものを憶測で簡略化したものを添付します。
これで式を考えてみます。

私が回答投稿して良い空気なのかわからないけど…

■APが「○」の場合
ALやAYの内容がどうであれ、結果は全て「業務報酬」になります。

これを、IF関数を使って表すと以下のようになります。

=IF(AP="○","業務報酬",【AP="×"の場合の処理】)   …【式1】

これで、条件①~④の場合の処理は完了。

■APが「×」の場合
結果が「業務報酬」と「預り金」のどちらかになります。
どの条件で結果が分岐するのか、見てみると・・・

AYに金額の記入があるか、無い(空欄)かで違います。

これを、IF関数を使って表すと以下のようになります。

=IF(AY<>"","業務報酬","預り金")   …【式2】

これで、条件⑤~⑧の場合の処理は完了。

■合体!

(式1)と(式2)を合体させると、条件①~⑧全てを処理できる式になります。
ではやってみましょう。

=IF(AP="○","業務報酬",【AP="×"の場合の処理】)
   ↓
=IF(AP="○","業務報酬",【式2】)
   ↓
=IF(AP="○","業務報酬",IF(AY<>"","業務報酬","預り金"))   …完成!

※もちろん、「AP」「AY」だけだとセルになっていないので、行番号も加えて下さい。


■疑問
あくまで、私が画像から読み取った条件で考えたのですが

AL(業者名の有無)については、結果表示させるにあたり、条件として不要だと思います。

条件④と条件①の違いは?(画像で判別不可)

条件④と条件⑧は無いパターンとのことでしたので、
データミスでも存在しえないないものと解釈しまして、
敢えてそのようなケースが合った場合のエラー処理などは含めていません。

---------------------
★別解
添付した表を前提条件としての別解を。

条件がいくつもあっても、結果が「預り金」となるパターンは条件⑦、ただ1つのみ。

そこだけをIFで判別します。

=IF(AND(AP="×",AY=""),"預り金","業務報酬")

こんなにシンプルになります。
※もちろん、「AP」「AY」だけだとセルになっていないので、行番号も加えて下さい。

またしても添付画像が判別できないですけど。
細かく書いても表示される画像は縮小されてしまうので、
それでもわかるように工夫(画像をトリミング;必要な部分以外は切り捨てる)する必要があります。
その方法は質問に関係ないので省きます。

画像のものを憶測で簡略化したものを添付します。
これで式を考えてみます。

私が回答投稿して良い空気なのかわからないけど…

■APが「○」の場合
ALやAYの内容がどうであれ、結果は全て「業務報酬」になります。

これを、IF関数を使って表すと以下のようになります...続きを読む

Q1つのSUMIFSをSUMで括った数式の意味について

エクセル2010を使っている者です。

会社で使っているファイルで
=SUM(SUMIFS(合計!J:J,合計!G:G,{"1000","9000"},合計!H:H,"<=160",合計!F:F,5000))
という数式を使っていました。

SUMIFS関数はSUM(合計)の意味を含んでおり、SUMで括る意味がわかりませんでした。
(SUMの中に複数のSUMIFSを入れているのであれば、SUMIFS(・・・)+SUMIFS(・・・)という
意味になり理解できるのですが)

また、{}の意味もわかりません。

どなたか、ご教示願います。

Aベストアンサー

SUMIFS(合計!J:J,合計!G:G,{"1000","9000"},合計!H:H,"<=160",合計!F:F,5000)
を数式バー内で選択して[F9] 配列の結果が返ります。1行2列
それを合計するSUMです。
G列が1000 または 9000の場合で、かつ
H列が160以下で かつ
F列が5000 であるJ列を合計しなさい

G列が1000、かつ
H列が160以下で かつ
F列が5000 であるJ列を合計したものと
G列が9000、かつ
H列が160以下で かつ
F列が5000 であるJ列を合計したものを足しなさい
でもよいです


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報