- ベストアンサー
勤務表で
IF関数を使い =IF(D24="a","0",IF(D24="b","0",IF(D24="c","0",IF(D24="d","8",IF(D24="e","11",IF(D24="f","7",IF(D24="g","6",IF(D24="h","8",IF(D24="i","8","10"))))))))) と入力したいのですが、 『入力した数式は正しくありません』と出ます。 正しく出す方法を教えて下さい。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- mu2011
- ベストアンサー率38% (1910/4994)
- noah7150
- ベストアンサー率46% (116/251)
- shito_17th
- ベストアンサー率50% (28/55)
関連するQ&A
- エクセルで勤務表作成について
昨日もご相談させていただき、色んな方からご回答をいただき、やったぁ~と喜んでいたんですが、色んな検証をすすめていくと、修正が必要だと判明したので、また助けていただけますでしょうか? 以下のような項目で表を作成しているんですが、G7:普通残業の部分でずっとひっかかっております。 宜しくお願いいたします。 A7:月日 B7:区分(土日・祝日に1を入力) C7:始業時間 D7:終業時間 E7:休憩時間 F7:所定時間(7:30までしか表示しない) =IF(B7>0,"",IF(D7-C7-E7>7.5/24,$F$1,IF(C7="","",D7-C7-E7))) G7:普通残業(実働7:30を超え、8時間までの時間表示) ※ ここが上手く出来ません =IF(B8>0,"",IF(D7-C7-E7>7.5/24,IF(D7-C7-E7-7.5/24>=0.5/24,0.5/24,D7-C7-E7-7.5/24),""))という式を入れたんですが、C7:始業時間が9:30、D7:終業時間が18:30(18:30以外の時間は全て表示するようです)、E7:休憩時間が1:00の時、G7:普通残業には0:30とはいらないんです。 =IF(D7-C7-E7>7.5/24,IF(D7-C7-E7-7.5/24>=0.5/24,0.5/24,D7-C7-E7-7.5/24),"")という式では上の問題は解決するが、B7:区分に「1」を入力した場合に表示されてしまう。 B7:区分に「1」が入力された場合はJ7:休出残業とK7:休出深夜に数字が飛ぶようにしてあるんです。 H7:時間外(実働8時間を超え、10時間までの時間表示) =IF(B7>0,"",IF(D7>"22:01",D7-C7-E7-"8:00"-I7,IF(D7-C7-E7>8/24,D7-C7-E7-"8:00",""))) I7:深夜残業(実働10時間を超えた場合の時間を表示) =IF(B7>0,"",IF(D7>"22:00",D7-"22:00","")) J7:休出残業=IF(B7="","",IF(B7=1,IF(C7="","",IF(K7="",D7-C7-E7,D7-C7-E7-K7)),"")) K7:休出深夜=IF(B7="","",IF(B7=1,IF(D7>"22:01",D7-"22:00",""),""))
- ベストアンサー
- オフィス系ソフト
- スケジュール管理表を作っています。数式があれば教えてください。
たとえば、下記のような表があります。 E 総数量 に対し、A~B期間内の日数を F~の月ごとのカレンダーに数量を反映させる事は出来ますでしょうか。 現在、数式を入れた例をのせましたが、F2 ~ I2 までに入る数式に苦戦しています。現在、数式例を載せましたが、一日の本数が反映するようになってしまいました。 A、Bを読み取る事はできたのですが、下のように、G2=93 H2=6というような結果になるように、どなたか知恵をお貸しください。 m( _ _ )m A B C D E F G H I 1 開始 終了 期間日数 一日本数 総数量本 7月 8月 9月 10月 2 8/1 9/2 33 3 100 93 6 C2=(DATEDIF(A3,B3,"d")+1) D2=ROUNDDOWN(D3/C3,0) F2=IF(AND(MONTH(G$1)>=MONTH($A3),MONTH(G$1)<=MONTH($B3)),$E3,"")
- ベストアンサー
- オフィス系ソフト
- エクセルの条件文で抽出したセルに改行を入れたい
条件文で作成した文字列内に改行を入れる方法を教えてください。 下記のようなエクセル(以後、数百行あります)があり、○がついているところの1行目にある文字をK2セルに入力したいと思います。 A B C D E F G H I J K 1 あ い う え お か き く け こ 2 ○ ○ ○ ○ ○ 3 ○ ○ ○ ○ K2セルには、○印のついている あ え き け こ と改行して出力されるように関数を組むにはどうしたらいいのでしょうか? =IF(A2=○,A1&"","")&IF(B2=○,B1,"")&IF(C2=○,C1,"")&IF(D2=○, D1,"")&IF(E2=○,E1,"")&IF(F2=○,F1,"")&IF(G2=○,G1,"")&IF(H2=○,H1,"")&IF(I2=○,I1,"")&IF(J2=○,J1,"") と入力してみましたがうまくいかず、これではうまくいったとしても 改行なしで あえきけこ と出てしまう気がします・・・。 一晩悩みましたがどうしてもうまくいかないのでどなたか教えてください。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- 2つの表を合わせた表3作成したい
表1 A B C D E F G H I 名称 1 01 00 00 00 00 000 00 00 00 あ 2 01 01 00 00 00 000 00 00 00 い 3 01 01 01 00 00 000 00 00 00 う 4 01 01 01 01 00 000 00 00 00 え 5 01 01 01 01 01 000 00 00 00 お 6 01 01 01 01 01 001 00 00 00 か 7 01 01 01 01 01 001 01 00 00 き 8 01 01 01 01 01 001 01 01 00 く 9 01 01 01 01 01 001 01 01 01 け 10 01 01 01 01 01 001 01 01 02 こ 20 01 01 01 01 01 001 01 02 00 阿 21 01 01 01 01 01 001 01 02 01 居 22 01 01 01 01 01 001 01 02 02 卯 100 02 00 00 00 00 000 00 00 00 亜 101 02 01 00 00 00 000 00 00 00 医 102 02 01 01 00 00 000 00 00 00 宇 AからIの欄には入る数字によって名称が変わります。 表2 A B C D E F G H I 1 01 01 01 01 01 001 01 01 01 2 01 01 01 01 01 001 01 01 02 3 01 01 01 01 01 001 01 01 03 4 01 01 01 01 01 001 01 02 01 5 01 01 01 01 01 001 01 02 02 6 02 01 01 01 01 001 01 01 01 この2つの表を合わせた表3を作成したいのです。 表3 A B C D E F G H I 1 01あ 01い 01う 01え 01お 001か 01き 01く 01け 2 01あ 01い 01う 01え 01お 001か 01き 01く 02こ 3 01あ 01い 01う 01え 01お 001か 01き 01阿 01居 4 01あ 01い 01う 01え 01お 001か 01き 01阿 02卯
- ベストアンサー
- オフィス系ソフト
- 勤務表の計算式で困っています
勤務表で A列に日付 B列に曜日 ---------- Xさん C列 出勤は◎ 休みは空欄 D列 D1=IF(C1=0,"",COUNTIF(C1,"◎")+COUNTIF(E1,"◎")+COUNTIF(G1,"◎") ---------- Yさん E列 出勤は◎ 休みは空欄 F列 F1=IF(E1=0,"",COUNTIF(C1,"◎")+COUNTIF(E1,"◎")+COUNTIF(G1,"◎") ---------- Zさん G列 出勤は◎ 休みは空欄 H列 H1=IF(G1=0,"",COUNTIF(C1,"◎")+COUNTIF(E1,"◎")+COUNTIF(G1,"◎") ---------- といった表での計算式につきまして 日付行の例えば1日(A1行)の出勤が 3名出勤の場合 C1◎E1◎G1◎となり D1F1H1にはそれぞれ「3」と出力 2日(A2行)の出勤が Xさん1名の場合 C2◎ 、E2と G2 は空白となり D2には「1」と出力 F2H2は空白 とさせる場合 D1セルの計算式を =IF(C1=0,"",COUNTIF(C1,"◎")+COUNTIF(E1,"◎")+COUNTIF(G1,"◎") としていますが計算式エラーとなり数字だけ残って表示されてしまう場合があります その場合には下記の式に書き換えると表示が消えることもあるのですが =IF(C1="","",COUNTIF(C1,"◎")+COUNTIF(E1,"◎")+COUNTIF(G1,"◎") 毎回手作業でエラーを見つけて式を入れなおしています 計算式が違うのか根本が間違っているのか改善策をご教授ください ◎自体は別シートの方から参照コピーしております
- ベストアンサー
- その他MS Office製品
- 集計表の合計欄を入力に応じた表示にしたい
添付しているのは1月~12月に分けたA~Gの品物の集計表ですが、各合計欄を空白時は空白、 「0」を入力した時は「0」の表示のように、入力に応じた表示させたいと思っています。 私は関数利用の初心者ですが私なりに次のように数式を入力しました。 例えば 1月のA~Gの合計欄の数式は =IF(B6&B7&B8&B9&B10&B11&B12="","",SUM(B6:B12)) 1月~12月の品名Aの合計欄の数式は =IF(B6&C6&D6&E6&F6&G6&H6&I6&J6&K6&L6&M6="","",SUM(B6:M6)) この数式で一応は各合計欄が入力に応じた表示をしました。 1月~12月の品名Aの合計欄の数式ですが、最初はB6&・・・・・・・・・としているところを、 B6~M6という解釈で単純に(B6:M6="","")としてみましたがだめでした。 それで、もっと圧縮した数式にならないだろうかと色々試行錯誤してみましたが どうしても上手く行きませんでした。 何かいい方法があればお知恵をお貸しいただければと思い質問を致しました。 宜しくお願いします。
- ベストアンサー
- その他(インターネット・Webサービス)
- C言語の配列の使い方について質問です。
以下のプログラムを配列を使って見やすくしたいのですが、どのように作ったら良いでしょうか? 宜しくお願いします。 #include<stdio.h> int main(void) { int a, b, c, d, e, f, g, h, i, j, k, l, m ,n, o; /*5段目の処理*/ for(a = 1; a <= 15; a++) { for(b = 1; b <= 15; b++) { if(a == b) continue; for(c = 1; c <= 15; c++) { if(a == c || b == c) continue; for(d = 1; d <= 15; d++) { if(a == d || b == d || c == d) continue; for(e = 1; e <= 15; e++) { if(a == e || b == e || c == e || d == e) continue; // printf("%d %d %d %d %d\n", a, b, c, d, e); ////4段目//// if(a>b){ f=a-b; } else if(a<b){ f=b-a; } if(b>c){ g=b-c; } else if(b<c){ g=c-b; } if(c>d){ h=c-d; } else if(c<d){ h=d-c; } if(d>e){ i=d-e; } else if(e<d){ i=e-d; } // printf(" %d %d %d %d \n", f, g, h, i); /////3段目//// if(f>g){ j=f-g; } else if(f<g){ j=g-f; } if(g>h){ k=g-h; } else if(g<h){ k=h-g; } if(h>i){ l=h-i; } else if(h<i){ l=i-h; } // printf(" %d %d %d \n", j, k, l); /////2段目//// if(j>k){ m=j-k; } else if(j<k){ m=k-j; } if(k>l){ n=k-l; } else if(k<l){ n=l-k; } // printf(" %d %d \n", m, n); /////三段目///// if(m>n){ o=m-n; } else if(m<n){ o=n-m; } // printf(" %d \n", o); if(a != b != c != d != e != f != g != h != i != j != k != l != m != n != o){ printf("%d %d %d %d %d\n", a, b, c, d, e); printf(" %d %d %d %d \n", f, g, h, i); printf(" %d %d %d \n", j, k, l); printf(" %d %d \n", m, n); printf(" %d \n", o); } } } } } } }
- ベストアンサー
- C・C++・C#
- エクセルで困ってます。
今、データ処理をしているのですが、関数がわかりません。よろしくお願いします。 ++++++++++++++++++++++++++++ セルD2(D2:D583)の数値を 0 a 0以上5未満 b 5以上10未満 c 10以上20未満 d 20以上30未満 e ・ ・ ・ 90以上100未満 f 100 g 言う感じに分類したいので、 IF(D2=0,"a",IF(D2<5,"b",IF(D2<10,"c",IF(D2<20,"d",IF(D2<30,"e",IF(D2<40,"f",IF(D2<50,"g",IF(D2<60,"h")))))))) という関数を書きました。hまではうまくいったのですが、h以降つまり「60以上70未満をiと表示する」 というところを書くと「入力した式にはエラーがあります」とでてきてしまいます。なぜでしょう? 若しくはもっと良い関数があれば教えてください。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルの表作成(横のデータを縦にしたい)
こんにちは、いつもお世話になっております。 エクセルの表作成で困っています。 A B C D E F G H I ・・・ 1 7 ○ 東京 A 1 B 2 C 1 ・・・ 2 5 △ 札幌 C 5 B 8 D 6 3 このようなデータがあり、これを別シートに転記(数式でリンクを貼りたい)を したいのですが、 A~Cは固定で、DEがセット、FGがセット・・・といった感じで 横になっているものを縦にしたいのです。 (解かりにくくて申し訳ありません) ↓ A B C D E F G H I 1 7 ○ 東京 A 1 2 7 ○ 東京 B 2 3 7 ○ 東京 C 1 4 5 △ 札幌 C 5 6 5 △ 札幌 B 8 (具体的にはD~のデータは9セットあります) 一個分のデータの数式は組めたのですが、(=でつないでるだけです) 縦にもデータがいくつもあり、(MAX200程度ですが) オートフィルで上手く数式をコピーすることが出来ません。 マクロは使用不可なので、何とか関数で上手く作成ができないものか 悩んでおります。 どうか、お知恵を拝借できれば幸いです。 どうぞよろしくお願いいたします。
- ベストアンサー
- その他(業務ソフトウェア)