[[20150410140127]] 『Sheet1の表をSheet2にカレンダー表示したい』(素人の悪あがき) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『Sheet1の表をSheet2にカレンダー表示したい』(素人の悪あがき)

Sheet1の表(予定表)

  A        B       C       D      E       F    G
1 客先    物件名  番号   住所  工事内容  備考  工事予定日
2 Z         ○○    101    …     ★     …     4/4
3 W       △△    202    …     ☆     …      4/2
4

となっている表を
Sheet2 で以下のようなカレンダーにしたいと思っています。

  A       B       C       D        E       F      G
1 2015年    1月
2 日      月       火     水      木      金      土
3                     1       2        3       4
4                         W△△202 ☆      Z○○101 ★
5
6
7
8
9
10
11
12
13  
14  5     6      7       8      9      10      11

   ・ 
   ・ 
   ・ 

のようにしたいです。
1日の行数を10行にして、カレンダー内に必要事項を表示させるには、どのようにすれば良いでしょうか?(月によって、行数を増やすことも可能なようにしたいです)

また、月が変わるごとに、Sheetを別にしていたのですが、データを一括にして、カレンダーを更新していくことができるのでしょうか?

以前、こちらであった質問のご回答を基に6行のカレンダーを作成したのですが、行数を増やすことができず、再度、スレッドをたてさせていただきました。
関数も全くの素人なので、勉強している途中です。
ご教示の程、よろしくお願いいたします。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 カレンダーまではできているんですよね?

 MATCH関数で3行目、14行目の日付をキーに工事予定日を検索して
 INDEX関数でつなげたい文字列分同じことを繰り返せばできると思いますが・・・

 INDEX MATCHで全文検索すれば参考になる数式があると思います。

(稲葉) 2015/04/13(月) 08:29


 なんか見たことある質問だなと思ったら
[[20080816175038]]
 ですね。しかも回答したことも忘れていたという・・・。
 ニックネームが違いますが同じ人ですか?

 Sheet1のH2セル =A2&B2&C2&" "&E2
 下にフィルコピー

 Sheet2のA3セル =IF(OR(MOD(ROW(A3),10)=0,$B$1<>MONTH(DATE($A$1,$B$1,1)-WEEKDAY(DATE($A$1,$B$1,1))+COLUMN(A1)+7*(INT(ROW(A1)/10)))),"",DATE($A$1,$B$1,1)-WEEKDAY(DATE($A$1,$B$1,1))+COLUMN(A1)+7*(INT(ROW(A1)/10)))
 G3セルまでフィルコピー

 Sheet2のA4セル =IF(A3="","",IFERROR(INDEX(Sheet1!$H$2:$H$1001,SMALL(IF(Sheet1!$G$2:$G$1001=MAX(A$3:A3,1),ROW($A$1:$A$1000)),MOD(ROW(A1),11))),""))
 Ctrl + Shift + Enter で確定
 まずG4セルまでフィルコピーして、その状態のまま13行目までフィルコピー

 A3セルからG13セルを選択した状態で68行目までフィルコピー

 でもこれ処理が相当重くなるかも・・・。
(se_9) 2015/04/13(月) 11:03 修正14:05

稲葉様、se_9様、ご回答ありがとうございます。

se_9様 まぎらわしくてすみません、その通りです。
別のPCを使って再度、スレッドをたてさせていただきましたので、ニックネームを変えさせていただきました。

以前のスレッドの際に、se_9様に教えていただいたものを使用しましたので、se_9様の関数を使わせていただきました。

以前のスレッドのものよりも、かなり簡略化されて、カレンダーは完璧にできました。
しかし、日付以下の内容がうまく反映されてきません・・・

同一週の1行目のみに同じ内容が反映されてしまいます。
何が問題なのでしょうか?

再度、ご教示をお願いいたします。
(素人の悪あがき) 2015/04/14(火) 13:11


 こちらでテストしたときは表示されました。

 Sheet2のA4セルに数式をコピペした後、ちゃんとCtrl+Shift+ Enterで確定していますか?
 式が{}でくくられているはずですが。
(se_9) 2015/04/14(火) 13:20

se_9様  できました!!!

{}を外してしまっていたのと、日付の表記が間違っていたために表示できなかったようです。
完璧なものができました!!
ありがとうございました。

あと、今後の為に、
一日の最大表示件数が今は10件になっているのですが、もっと増やすためには、どの部分を訂正していけばよいのでしょうか??

本当に素人で申し訳ありません・・・ご指導よろしくお願いします。
(素人の悪あがき) 2015/04/15(水) 12:47


 15行の場合
 日付を表示させる数式は3箇所ある10を15に変更
 スケジュールを表示させる数式はMOD(ROW(A1),11)の部分をMOD(ROW(A1),16)に変更

 日付→行数分そのまま変更
 スケジュール→MOD関数の除数部分を行数分+1に変更
(se_9) 2015/04/15(水) 13:52

se_9様 

分かりやすい説明ありがとうございます。
必要な行数が増えても、これで安心です。
さらに、前に作っていた関数の時の行数が増やせなかった原因もわかり、
大変勉強になりました。
ありがとうございました。

また、よろしくお願いします。

(素人の悪あがき) 2015/04/15(水) 15:57


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.