- ベストアンサー
部屋の予約表で氏名の性を参照する方法
kagakusukiの回答
まず、シート「10月」のA7以下に、各部屋の部屋番号を入力して下さい。 次に、シート「10月」のA2セルに次の関数を入力して下さい。 =SUBSTITUTE(REPLACE(CELL("filename",A2),1,FIND("]",CELL("filename",A2)),),"月",)+0 次に、シート「10月」のB5セルに次の関数を入力して下さい。 =IF(ISNUMBER(($A$1&"/"&$A$2&"/"&COLUMNS($B:B))+0),($A$1&"/"&$A$2&"/"&COLUMNS($B:B))+0,"") 次に、シート「10月」のB5セルをコピーして、シート「10月」のB6セルに貼り付けて下さい。 次に、シート「10月」のB5セルの書式設定の表示形式を、[ユーザー定義]の d として下さい。 次に、シート「10月」のB6セルの書式設定の表示形式を、[ユーザー定義]の aaa として下さい。 次に、シート「10月」のB7セルに次の関数を入力して下さい。 =IF(COUNTIFS(入力!$D:$D,$A7,入力!$G:$G,"<="&B$5,入力!$H:$H,">="&B$5,入力!$G:$G,">0",入力!$H:$H,"<9999/12/31")=1,INDEX(入力!$E:$E,SUMPRODUCT(ROW(入力!$E$1:INDEX(入力!$E:$E,MATCH(9E+99,入力!$A:$A)))*(入力!$D$1:INDEX(入力!$D:$D,MATCH(9E+99,入力!$A:$A))=$A7)*(入力!$G$1:INDEX(入力!$G:$G,MATCH(9E+99,入力!$A:$A))<=B$5)*(入力!$H$1:INDEX(入力!$H:$H,MATCH(9E+99,入力!$A:$A))>=B$5))),IF(COUNTIFS(入力!$D:$D,$A7,入力!$G:$G,"<="&B$5,入力!$H:$H,">="&B$5,入力!$G:$G,">0",入力!$H:$H,"<9999/12/31")>1,"重複","")) 次に、以下の操作を行って下さい。 シート「10月」のB7セルを選択 ↓ Excelウィンドウの[ホーム]タブをクリック ↓ 「スタイル」グループの中にある[条件付き書式]ボタンをクリック ↓ 現れた選択肢の中にある[ルールの管理]をクリック ↓ 現れた「条件付き書式ルールの管理」ダイアログボックスの[新規ルール]ボタンをクリック ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[指定の値を含むセルだけを書式設定]をクリック ↓ 現れた「次のセルのみを書式設定」欄の左端の欄をクリック ↓ 現れた選択肢の中にある「セルの値」をクリック ↓ 「次のセルのみを書式設定」欄の左から2番目の欄をクリック ↓ 現れた選択肢の中にある[次の値に等しくない]をクリック ↓ 「次のセルのみを書式設定」欄の左から3番目の欄に ="" と入力 ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック ↓ 現れた「背景色」のサンプルの中にある緑色の四角形をクリック ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック ↓ 「条件付き書式ルールの管理」ダイアログボックスの[新規ルール]ボタンをクリック ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択して下さい」欄の中にある[数式を使用して、書式設定するセルを決定]をクリック ↓ 現れた「次の数式を満たす場合に値を書式設定」欄の中に =COUNTIFS(入力!$D:$D,$A7,入力!$G:$G,"<="&B$5,入力!$H:$H,">="&B$5,入力!$G:$G,">0",入力!$H:$H,"<9999/12/31")>1 と入力 ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック ↓ 現れた色のサンプルの中にある赤色の四角形をクリック ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック ↓ 「条件付き書式ルールの管理」ダイアログボックスの[適用]ボタンをクリック ↓ 「条件付き書式ルールの管理」ダイアログボックスの[OK]ボタンをクリック 次に、シート「10月」のB5~B7の範囲をコピーして、シート「10月」のC5~AF7の範囲に貼り付けて下さい。 次に、シート「10月」のB7~AF7の範囲をコピーして、同じ列の8行目以下に貼り付けて下さい。 次に、「10月」のA1セルに西暦年を表す正の整数値を入力して下さい。 次に、シート「10月」のコピーシートを11枚複製して、そのシート名を各月名(1月~12月)に変更して下さい。 以上です。
関連するQ&A
- 【Excel】複数条件の合計
Excel2003を使用しています。 Sheet1のD7:D200に『あ』、G7:G200に2(数値)、と入力されているH列の合計をSUMPRODUCT 関数を使用して計算しました。 同じ条件で、範囲の最終行数をあるセルに取り出しておいて、INDIRECT 関数を組み合わせたのですが、うまくいきませんでした。 数式は、Sheet2に下記のように入力してみましたが、このような使い方は間違っているのでしょうか? =SUMPRODUCT((Sheet1!D7:INDIRECT("D"&F1)="あ")*(Sheet1!G7:INDIRECT("G"&F1)=2)*(Sheet1!H7:INDIRECT("H"&F1))) また、他にこんな方法があるというのがあれば、あわせて教えていただけると嬉しいです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルの関数について。
エクセルの関数。 Sheet1の作業列1のA2セルに =IF(COUNTA(Sheet2!2:2)=0,"",IF(Sheet2!A2="",A1,Sheet2!A2)) →数式1とする 作業列2のB2セルに =IF(A2=$D$2,ROW(),"") →数式2とする という数式を入れA2・B2セルを範囲指定 → B2セルのフィルハンドルで下へコピーしておきます。 (Sheet2の行数以上コピーしておく) そしてE2セルに =IF(COUNT($B:$B)<ROW(A1),"",INDEX(Sheet2!B:B,SMALL($B:$B,ROW(A1)))&"") →数式3とする という数式を入れオートフィルで列方向・行方向にコピーする。 教えて頂きたいことは、数式1、数式2、数式3が何を意味しているのか。 と、この数式を使って、表を作成したのですが、ある特定の数字(コード、D2セルに入力)を入力しても反応してくれない。 (E2~H2まで、空白セルの状態になります。) (sheet2は約1200行あります。) 教えて頂けないでしょうか?
- ベストアンサー
- オフィス系ソフト
- excelで1つの表から2つの表の作り方
excelの表について教えてください。 sheet1に1つの表が下のようにあります。 A B C D E F G 1 1 あ 亀 白 32 目 木 2 2 い 鶴 赤 25 耳 海 3 2 う 猿 青 44 鼻 川 4 1 え 牛 緑 76 口 湖 5 1 お 犬 黄 14 手 沼 6 2 か 猫 紫 83 足 丘 ここから2つの表を別のsheetに作りたいのです。 sheet2には、 A B C D E F G 1 1 あ 亀 白 32 目 木 2 1 え 牛 緑 76 口 湖 3 1 お 犬 黄 14 手 沼 と、A列の「1」の行だけを、また sheet3には、 A B C D E F G 1 2 い 鶴 赤 25 耳 海 2 2 う 猿 青 44 鼻 川 3 2 か 猫 紫 83 足 丘 と、A列の「2」の行だけを、それぞれ作りたいのです。 しかも、sheet1のA列に、1か2を入力することで、 自動的に、sheet2に1を記入した行を、sheet3に2を記入した行を割り振るようにしたいのです。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- 数式を奇数行と偶数行を別々に貼り付け!
数式を奇数行と偶数行を別々に張り付け の方法ってあるんですか?? Sheet1で計算表をつくっています。 B列~列Hまで1行と2行を結合さしていて、I列~X列は1行、2行別々です。 I列~X列に1行2行別々の数式をいれたいんです。 偶数行に =IF(Sheet2!AC52="","",IF(Sheet2!AC52<2,"<",ROUND(Sheet2!AC52,2))) として、2行・4行・6行・・・・ 奇数行に =IF(Sheet2!D52="","",IF(Sheet2!D52<Sheet2!$B52,Sheet2!$A52,ROUND(Sheet2!D52,4))) として、3行・5行・7行・・・・ でいう感じでしていきたいんですが、関数はありますか?? 関数以外でも方法があれば教えてください。 お願いします。
- ベストアンサー
- その他(プログラミング・開発)
- エクセル2003 関数
いつも回答して頂きありがとうございます。ちょっと悩んでいる事があります。 シート名1日の前半の赤,青,白,黄は最初から表示させていますが、1日の後半・2日の前半・・・は、前の状態【例えば、2日の前半以降で表示させるかどうかの判定は1日の後半の入力状況で判定】を確認して表示の有無を決めようと思っています。【シート名1日の前半の赤の右隣のセルに済が入力されたら、それ以降のシート名1日の後半や他のシートには赤を表示させない】 作業用のシートは作りましたが、シート名:1日の後半以降に入力する数式が分かりません。 作業用のシートからCOUNTIFで済の入力の有無を確認すればいいだけと思いますが、その式をどう形作ればよろしいでしょうか?宜しくお願い致します。 ・日付をふったシートの特定セルの入力内容を一覧シートに表示させる為の数式。 『前半』の行で表示させる為の数式 =IF(ISERROR(INDEX(INDIRECT($B3&"!$B$4:$C$25"),MATCH(D$2,INDIRECT($B3&"!$B$4:$B$25"),0),2))=TRUE,"",INDEX(INDIRECT($B3&"!$B$4:$C$25"),MATCH(D$2,INDIRECT($B3&"!$B$4:$B$25"),0),2)) 『後半』の行で表示させるための数式 =IF(ISERROR(INDEX(INDIRECT($B4&"!$G$4:$H$25"),MATCH(D$2,INDIRECT($B4&"!$G$4:$G$25"),0),2))=TRUE,"",INDEX(INDIRECT($B4&"!$G$4:$H$25"),MATCH(D$2,INDIRECT($B4&"!$G$4:$G$25"),0),2))
- ベストアンサー
- Excel(エクセル)
- 入力画面から各月の日付に参照
WINDOWS XP EXCELL2003です。 参照の図のような表を作成中です。 シートは 「入力」 とそれを月日毎に分けたシート「1~12月」の計13シートあります。 まず、シート「入力」の各列に入っている数式は A列 =IF(B2="","",TEXT(B2,"mm")) VBAによる色付け B列 ユーザー定義 mm/dd C列 =IF(D2="","",COUNTA($D$2:D2)) シート「1月」の数式は A1 =記入!M1 (2010/1/1) C2 =A1 (2010/1/1) ユーザー定義 d ご指導を賜りたいのは 例えば 「1月」のシートに反映する (2月~12月は同様の方法。) 1 「入力」の D2 ~ D4 は 「1月」の B 4 ~ B6 に 2 「入力」の K2 ~ K4 は 「1月」の C4 D5 E6 のそれぞれに反映 ご指導の程よろしく御願いします。
- ベストアンサー
- その他MS Office製品
- 表作成(EXCEL)
今回、excelで職場のライン表作成を任されまして、皆様のご意見をいただきたいと思いました。 単純な打ち込みはできるのですが、効率をあげるための手段として下記の方法を考えているのですが、詳しい方いましたらより良いアドバイスいただけると助かります。 <例> 例(sheet1) A列 B列 C D E F G H 時間 9:00 12:00 15:00 18:00 21:00 0:00 3:00 1行 勤務者1 a業務 d業務 c業務 2行 勤務者2 b業務 3行 勤務者3 例(sheet2) A列 B列 C D E F G H 時間 9:00 12:00 15:00 18:00 21:00 0:00 3:00 1行 勤務者1 b業務 c業務 a業務 2行 勤務者2 a業務 3行 勤務者3 sheet1に月曜 sheet2に火曜 ・・・といったように(わかりにくいかもしれませんが)曜日ごとに反映されるように関数を使用できれば手入力をせずとも済むのではと考えております。曜日ごとに業務内容の時間は違いますが毎週同じサイクルです。勤務者は7名で。 関数を使用してできる方法があればと考えております。
- ベストアンサー
- その他(ITシステム運用・管理)
- VBA 他シートを参照しているセルのコピー
お世話になります。 以下のシートがあります。 [sheet a] A B C D E 1 2004 2005 2006 2007 2008 2 =b!A2 =b!C2 =b!E2 =b!G2 =b!I2 3 10 15 16 4 11 4 12 30 20 9 2 5 =SUM(A3:A4) =SUM(B3:B4) =SUM(C3:C4) =SUM(D3:D4) =SUM(E3:E4) [sheet b] A B C D E F G H I J 2004 2005 2006 2007 2008 1 あ1 い1 う1 え1 お1 か1 き1 く1 け1 こ1 2 あ2 い2 う2 え2 お2 か2 き2 く2 け2 こ2 ・・・・・・・・・ [sheet a]F列以降に入れるデータは、VBA(マクロ)を使って、別のブックから取り出しています。 (例) F1…=E1+1(E1の数式をコピー) F3,F4…任意の値(別のブックからコピー) F5…=SUM(F3:F4)(E5の数式をコピー) 1行目,5行目の場合は左のセルをコピーして数式を貼り付けると、列が自動的に列が変わりますが、2行目の場合は元のシートを1行おきに参照しているので、単純にコピーしただけでは正しい数式が入りません。 2行目の参照をVBAで作るには、どのようにしたらいいでしょうか。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 関数で2つの条件から抽出する表を作りたい。
A1は手入力D4手入力、H2は=D2&C2 担当者と週で検索して抽出する式を教えて下さい。 上手く出来なくて1行しか抽出しないんです。 A B C D E F G H 1担当者 沼田 週 1 2 番号 日付 週 担当 企業 名前 住所 検索用 3 1 7月1日 1 沼田 a 高橋 土浦 沼田1 4 2 7月2日 1 佐藤 a 山田 阿見 佐藤1 5 3 7月2日 1 沼田 r 沖田 水戸 沼田1 6 4 7月7日 1 沼田 c 斎藤 土浦 沼田1 7 5 7月9日 2 佐藤 h 鈴木 牛久 佐藤2 8 6 7月14日 3 佐藤 d 河合 土浦 佐藤3 9 7 7月15日 3 高橋 e 吉田 阿見 高橋3 10 8 7月20日 4 高橋 e 木田 水戸 高橋4 11 9 7月4日 1 沼田 g 飯田 牛久 沼田1 上記の表から1週目だったら、1週目の担当者のデータをシート2の表に抽出 週2だったら2週目の担当者データを抽出 A1・D1は手入力 A3は=IF(COUNTIF(Sheet1!D$2:D$1000,B$1)=0,"",MATCH($B$1&$D$1,Sheet1!$H$2:$H$1000,0)) シート2 A B C D E F G 1 担当 沼田 週 1 2 番号 日付 週 担当 企業 名前 住所 3 1 7月1日 1 沼田 a 会田 牛久 4 4 7月2日 1 沼田 r 沖田 水戸 5 6 7月7日 1 沼田 c 斎藤 土浦 6 9 7月4日 1 沼田 g 飯田 牛久 上記の様にシート2に表示したいんです。 細かく教えて下さい。何度やっても1行目のデータしか抽出しないんです。 A3=IF(COUNTIF(Sheet1!D$2:D$1000,B$1)=0,"",MATCH($B$1&$D$1,Sheet1!$H$2:$H$1000,0)) B3=IF($A3="","",IF(VLOOKUP($A3,Sheet1!$A$2:$H$1000,COLUMN(B1),0)="","",VLOOKUP($A3,Sheet1!$A$2:$H$1000,COLUMN(B1),0))) A4の2行目以降1になってしまって同じ物しか出ないんです。 Aの番号の抽出方法の式を教えて下さい。
- 締切済み
- その他(データベース)
お礼
今ご回答いただいたのをセットして確認させていただきました。 ご丁寧なご指導は大変ご苦労されたと思ってすごく感謝しています。 本当に重ね重ねありがとうございました。 すごく助かりました。