• ベストアンサー

エクセルのmatch関数?

下記の様な表を作りました      1   2   3   4   5   6   7 ・・・・      月  火  水   木   金  土  日・・・・ イトウ  出勤 出勤 欠勤 出勤 欠勤 出勤 出勤 サトウ  欠勤 出勤 欠勤 出勤 出勤 欠勤 出勤 カトウ 出勤 欠勤 出勤 出勤 出勤 出勤 欠勤   この表の中から、「イトウ」が欠勤したのは何日かを表示させたいです イトウ 欠勤日  3  5   の様に別のセルに日にちだけでも表示したいのです 複数ある場合も全部日にちを表示させたいのです。 表示は縦でも横でもどちらでもいいのですが、何日に欠勤したかを 出勤簿に入力しただけで、自動に表示させたいです よろしくお願い致します。  

質問者が選んだベストアンサー

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.3

◆イトウさんの欠勤日 =IF(COLUMN(A1)>COUNTIF($B3:$AF3,"欠勤"),"",INDEX($A$1:$AF$1,SMALL(INDEX(SUBSTITUTE(($B3:$AF3="欠勤")*1,0,10^5)*COLUMN($B$1:$AF$1),),COLUMN(A1)))) ★この式を下にコピーすると、「サトウ」、「カトウ」さんの欠勤日が表示されます

ban4
質問者

お礼

たびたびすみません、今一部分の行番号を変更したら「欠勤」部分の 日付が表示出来るようのなったのですが、最初の欠勤日だけで2回目、3回目の日付が表示出来ません、例えば一ヶ月に5日欠勤したとしたら、全ての日にちを表示すろ事は出来るのでしょうか? 表示するのは1つのセルにでも複数にでも構いません。 よろしくお願い致します。

ban4
質問者

補足

回答ありがとうございました 試してみたのですがなかなかうまくいきません・・・ 関数の事はよく解らないので数式をコピーして、実際の表に 合わせて行番号、範囲などを変えたつもりなのですが。 エラーにならずに数字は出るのですが実際その部分は空白のセルで欠勤と入っていないのです。 数式の中の (COLUMN(A1)>の(A1)と ")*1,0,10^5)*の部分は何を指すのでしょうか? よろしくお願いします

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (6)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.7

ANo.6です。 >やはりVBA等でないと無理でしょうか。 数式でも出来ると思いますよ。(私は苦手ですけど) ただし最大31日間休むことも考えなければなりませんから、31日分のセルに対して、 事前に数式を入れておく必要はありますね。

ban4
質問者

お礼

ありがとう御座いました。

全文を見る
すると、全ての回答が全文表示されます。
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.6

ANo.5です。 >実際のデータは最初の質問の様な感じなんですけど、 表の感じは確かにわかります。 けどANo.3さんの補足にもありますが、 >実際の表に合わせて行番号、範囲などを変えたつもりなのですが。 合わせたけど出来なかったわけですよね。 と言う事は回答する側にしてみると、 どこの範囲にデータがあってどこに結果を出そうとしてダメだったのか。 検証しようにもできないのです。 別方法でVBAでゴテゴテにコードを書くことで、希望の結果も出せるかも知れませんが、 データの位置と結果の表示位置がわからなければお手上げです。 (回答者側で検証出来た状態で提示しても、実際と合わなければエラーになりますし) 直接の回答でなくすいませんでした。

ban4
質問者

補足

解りにくくてすみません、実際の表の状態を書きます A1に(西暦)  B1に(月) B3~AF3迄(日付1~31)固定になっています B4~AF4迄(曜日)B1に月を入力すると曜日が変わります B5~AF5迄(出勤・欠勤など)リストから選択しています A列の5~22迄名前が入っています。 この表の下に同じくA列に名前 B25に欠勤日とし、C25以降に欠勤した全ての日付を表示させたいです、やはりVBA等でないと無理でしょうか。

全文を見る
すると、全ての回答が全文表示されます。
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.5

ANo.4です。 実際のデータがどのように配置され、どこに名前を打ち込んで結果を出したいのかがわからないので、 回答も憶測になってしまいます。 と言うか関数ご希望なら私は苦手ですので無理かも。

ban4
質問者

補足

実際のデータは最初の質問の様な感じなんですけど、例えばデータ元となる表の下にでも欠勤日表みたいな感じで、誰がその月の何日に欠勤したかを表示させたいです。 名前は最初から打ち込んでいて、その脇でも下でもいいのですが 欠勤した日付を表示できるようにと考えています。 解りにくくて申し訳ありません。

全文を見る
すると、全ての回答が全文表示されます。
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.4

>出勤簿に入力しただけで、自動に表示させたいです と言うのが、1つのセルに「イトウ」と入力した時・「サトウ」「カトウ」と入力した時、 同一の行に欠勤した日を列挙したいと言う事なのかな。

ban4
質問者

お礼

作る事が出来ました ありがとう御座いました。

ban4
質問者

補足

例えば イトウ 欠勤 3 5 サトウ 欠勤 1 3 6 カトウ 欠勤 2 7 の様な感じにしたいのですが・・・ 表の中から各自の欠勤日の日にちを抜いてきて自動に表示したいんです よろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。
  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.2

日付がB1セルからAF1セルまで横に、出勤か欠勤かがB3セルからAF1セルまで横に入っている場合 =IF(B3="欠勤",B1 & " ","") & IF(C3="欠勤",C1 & " ","") & IF(D3="欠勤",D1 & " ","") & IF(E3="欠勤",E1 & " ","") & …(中略)… & IF(AE3="欠勤",AE1 & " ","") & IF(AF3="欠勤",AF1 & " ","") と言う式を書けばOKでしょう。 31個のIF関数を書くのは手間ですけどね。

ban4
質問者

補足

回答ありがとうございます 日付の表示が、例えば13510ではなく 1 3 5 10の様に つながらないで表示は可能でしょうか? もう1つですが、実際の表の日付部分の表示がユーザー定義のbで 表示していて、それを標準に戻すと3562の様に表示されます 今回教えて頂いた方法だと、ユーザー定義bを選んでも3562の表示 から変わらないものですから、良ければこちらもお願いします。

全文を見る
すると、全ての回答が全文表示されます。
  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

自動ではなく、少し「力技」です。 まず、行と列を入れ換えたシートを作成します。 (行と列の入れ換え方法) http://shikaku.biglobe.ne.jp/pc_technic/excel/03_1.html 次に各列に、オートフィルタを設定します。 「イトウ」さんの列のフィルタ条件から、”欠勤”を選択すれば、 欠勤したデータのみの表示になります。 いかがでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル関数の式

    sheet1       A   B    C     D    E    F   1    2008  6月 2 3    日付   1     2     3     4    5       4    曜日   sun    mon    Tue    wed 5山田太郎   出勤  出勤  欠勤 6山田次郎   出勤  欠勤  出勤 ・ ・ 22山田一郎   出勤 欠勤  出勤 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ B1の月を変えると曜日も変わります(日付は固定です)B5、6等の 出勤・欠勤はリスト表示から選択して入力しています。 sheet3    A  B C D E F G H I J K L M N 33  日    月   火    水    木    金    土 34   1    2   3    4   5    6   7 35   8    9   10   11   12   13   14 36  15   16   17   18   19   20   21 以下省略  行は33行目から始まっています ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 曜日は固定でsheet1の月を変えると日にちの位置が月ごとに変わります 日月火水木金土の間に空白のセルがあります(B列D列、FHJL列) この日にちの隣の空白セルにsheet1の出勤・欠勤などを各日にち事に表示したいです 上記のカレンダーには一人分の出欠を表示したいです(同じカレンダーが人数分あります) 月ごとにsheet3の日にちの位置がずれてしまうので、うまく表示出来ません。 いい方法はないでしょうか?よろしくお願いします。

  • エクセル関数の問題を教えください

    問題 関数を使用し、下記の例題のような予定表の日、曜日を表示させてください (1)2011年2月の予定表を作成してください (2)2011年3月の予定表を作成してください (月末の日が月により変わりますので、その部分を関数で作成してください) (曜日部分は全て関数で作成してください) 例題 3 月予定表 日 曜日 予定 1 火 2 水 3 木 4 金 5 土 6 日 7 月 8 火 9 水 10 木 11 金 12 土 13 日 14 月 15 火 16 水 17 木 18 金 19 土 20 日 21 月 22 火 23 水 24 木 25 金 26 土 27 日 28 月 29 火 30 水 31 木

  • エクセルでカレンダーにより色をつけたい

    エクセルを用いて毎日のチェック表のようなものを作りました。 日にちに合わせて曜日を表示させるようにしました。「=MID("月火水木金土日",WEEKDAY(E6,2),1)」 これにより自動で曜日が表示されますが、このときに合わせて土曜と日曜のところのセルを自動で色をつけたいのです。     1 2 3 4 5 6 7 8 9     木 金 土 日 月 火 水 木 金 項目1 項目2 項目3 上のような形になっており、この場合ですと3、4の土日部分を自動で色をつけたいのです。 よろしくお願いします。

  • エクセルの関数について

    エクセルに詳しくないので関数に強い方宜しくお願いいたします。 シート1の1行目に月・火・水・木・金・土・日と曜日を入れ、2行目にその曜日に合わせた月曜日が「3」、火曜日が「9」、水曜日が「4」など決まった数字を入れるとします。 シート2に月間の7/1から7/31で水曜日から始まる表を作り、その下の行にシート1に入れた7/1(水)だったら「4」、7/2(木)なら・・・と数字が表示されるような関数はあるでしょうか?

  • エクセルの関数を教えてください

    エクセルで(シート1)に日付を縦に3か月分ぐらい並べて違うシート(シート2)のセルに日付を入力します。 (シート2)で入力した日を(シート1)の日付の横のセルに●を表示させる事は関数で可能ですか? 例えば、(シート2)に【7月20日】と入力したら(シート1)の【7月20日】の横のセルに●を表示させたいんです。 仕事の報告書で毎日報告書を出す訳ではないので報告書を作った日(日付を入力した日)を一覧表で●が表示されていれば一目でいつ報告書を書いたか分かるようにしたいんです。 分かる方よろしくお願いします。

  • エクセル関数 countのことで教えて下さい

    初歩な質問でスミマセン。。周りに聞ける人がいないものでよろしくお願いします! 月 火 水 木 金 土 日 月 火 水 木 金 土 日・・・・・ 10 12 15 12 22 23 10 22 25 12 30 22 35 15 ↑のような表があり、これを元に各曜日毎に15以上の曜日をカウントしたいのです。。 countif("曜日の範囲","月")等で、各曜日のカウントを現在やっているのですがその各曜日から 15未満の日をカウントしないようにする工夫はできませんでしょうか? なにとぞ宜しくお願いいたします。 ちなみにエクセルは2003です。

  • Excelで関数かマクロを教えてください

    シフト表のようなものをつくりたく、 縦に名前、横に日付、日付の下に出勤や休みという感じの見た目にしたいです。    6/1  6/2  6/3 山田 出勤 休み 出勤 鈴木 休み 出勤 休み 佐藤 出勤 出勤 欠勤 のような感じです。 元データがあり、 山田 6/1 出勤 山田 6/2 休み 山田 6/3 出勤 鈴木 6/1 休み 鈴木 6/2 出勤 鈴木 6/3 休み 佐藤 6/1 出勤 佐藤 6/2 出勤 佐藤 6/3 欠勤 のように並んでいるCSVファイルがあります。 けっこうな人数がいて、何か月分も作成するのでなにかいい方法はありませんでしょうか。

  • エクセル 関数

    A   B   C    D 10/1  金  9:00  12:00 10/2  土  9:00  13:00 10/3  日  9:00  14:00 10/4  月  9:00  11:00 10/5  火  9:00  15:00 :   :    : 5        5     2               3 Aは日付です。 Bは曜日です。 Cは出勤時間 Dは退勤時間 そこでお聞きしたいのですが・・ 12:00まで働いた曜日別のデーターがほしいのですが・・ 曜日  12:00   15:00  18:00 月    1      2    1 火    2      1    1 水    1      0    0 木    1      0    1 :    :      :   : 上記のような感じにしようと思っています。 関数がわからなく困っています。 宜しくお願いします。。

  • EXCEL 条件付き書式

    過去の質問を検索したのですが見つからなかったので投稿させていただきました。 Excel2010を使用しています。 カレンダーを作成して日曜日と祝日と隔週月曜日の列に条件付き書式で色をつけたいのですが 教えていただけないでしょうか? ちなみに25日締めなので 26日~翌月25日までのカレンダーです。      B 3     26 27 28 29 30 31 1 2 3 4 5 6 7 8 9 10 11 4     土 日 月 火 水 木 金 土 日 月 火 水 木 金 土 日 月 5 ○○  6 △△ 7 ×× 8 合計 B3(26) は 2013/2/26 表示形式 d   B4(土)は=B3 表示形式 aaa 表が揃ってなくてわかりにくいですが日にちの下のセルに曜日がはいるようになっています。 祝日一覧を作成し、祝日と日曜日は=OR(WEEKDAY(B$3)=1,COUNTIF(祝日,B$3)) で条件付き書式で色を変更できたのですが 隔週月曜日はいろいろと試してみたのですがうまく設定できません。 よろしくお願いいたします。

  • エクセル カレンダー

    エクセルのカレンダーついて教えて下さい。 B1 西暦 C1月日 B9 日 月 火 水 木 金 土 B10 ~ H12 B16~ H12 B18~ H12 B20~ H12 上記4段に日にちの数字のみ(1 2 3 4) 入力になります。 表は一ヶ月単位 表のレイアウトは横 B1 西暦 C1月日 に入力をしたら、日にちが自動で反映されるように、 したいのですが、詳しい方計算式を教えて頂けますでしょうか?  宜しくお願い致します。  

専門家に質問してみよう