痔になりやすい生活習慣とは?

こんばんは、エクセルで少し複雑なシフト表を作成したいです。
作り方(もしくはwebページの紹介)、フリーソフトがありましたら教えて頂きたいです。
・以下のような1週間の基本ファイルがあります。
横軸に日~土
縦軸に1・2・3で分けた時間のパターンがあり、交わるところに勤務場所別に分けた従業員の名前が記入してあります。
・従業員別のシフトカレンダー(普通のカレンダーに勤務場所と時間が書いてあります。)勤務場所別カレンダー(普通のカレンダーに従業員名と時間が書いてあります。)
基本ファイルから従業員及び勤務場所別のカレンダーがうまく反映するように作成したいです。
文章では説明が難しいのですが、なるべく簡単にシフトの変更などもボタンでできるようにしたいです。
そういった事に詳しいサイトやフリーソフトがありましたら教えて下さい。
よろしくお願いします!!!!

このQ&Aに関連する最新のQ&A

A 回答 (5件)

勤務場所別のシフト表です。

Sheet2にします。
フォーマットはSheet2と全く同じです。
従って、とりあえずSheet1の全てをSheet2へコピーします。

A1に勤務場所を入力します。
B1~H7までを削除します。
B2に、
=INDEX(Sheet3!$B$2:$H$57,+(COLUMN()-2)*8+ROW(),MATCH($A$1,Sheet3!$B$2:$H$2,0))
として、これをB2からH2までコピーします。
以上で終了です。

この回答への補足

長々とありがとうございます。
やってみます!!!

補足日時:2007/11/21 01:55
    • good
    • 0

Sheet1:個人別シフト表です。


同じ人が、複数の時間帯、勤務場所があるため、一日内のシフト回数が不定となります。
このため、一般のカレンダーのような、日別の表示は無理です。
そこで、小学生の時間割のような表にせざるを得ませんでした。
イメージは以下のようになります。

  A     B    C    D    E    F    G    H
1 織田   日    月    火    水    木    金    土
2  1    尾張  尾張  尾張  尾張  尾張  尾張  尾張
3  2    信濃  信濃  信濃  信濃  信濃  信濃  信濃
4  3    甲斐  甲斐  甲斐  甲斐  甲斐  甲斐  甲斐
5  4    三河  三河  三河  三河  三河  三河  三河
6  5    安芸  安芸  安芸  安芸  安芸  安芸  安芸
7  6    尾張  尾張  尾張  尾張  尾張  尾張  尾張

A1に従業員の名前を入力します。
B1:=Sheet3!$A$2
C1:=B1+1 として、D1~H1へコピーし、B1~H1の表示書式を「aaa」に設定。
A2~A7にシフトの名前を入力しておきます。
B2:
=IF(ISNA(MATCH($A$1,OFFSET(Sheet3!$A$1,(COLUMN()-2)*8+ROW(),1,1,7),0)),"",INDEX(Sheet3!$B$2:$H$2,1,MATCH($A$1,OFFSET(Sheet3!$A$1,(COLUMN()-2)*8+ROW(),1,1,7),0)))
として、B2~H7までコピー。

でOKでしょう。
次は、勤務先別です。
    • good
    • 2

> 勤務場所が二つある場合や同じ日に2つの時間帯で勤務している場合


基本的に1日当たりの勤務時間帯と勤務場所とのマトリクス表が基本となり、
これを曜日毎に作っておくことになるでしょう。
Sheet3:曜日別、勤務場所別シフト表
A1:=EOMONTH(TODAY(),-1)+1 として表示書式を「yyyy/m」
A2:=$A$1-WEEKDAY($A$1)+ROW()-1
として、表示書式に「aaaa」を設定します。
※「ROW()-1」の「-1」はデータが2行目から始まっているからで、3行目からなら「ROW()-2」となります。

同じ勤務時間帯に同じ人が入るとマズイので、条件付書式を設定して重複を発見しやすくしておきます。
B3~H8を選択しておき、「書式」-「条件付書式」で「数式が」として
「=SUMPRODUCT(($B3:$H3=B3)*1)>1」として、書式に「パターン」の「色」を指定して「OK」を押します。
これで、ヨコ方向に同じ名前があれば背景に色がつきます。

ここで、A2~H8を選択してコピーし、A10~A16へ貼り付けます。
次にA10の数式を、「=A2+1」に変更します。
あとは、A10~H16を選択してコピーし、
A18~H24、A26~H32、A34~H40、A42~h48、A50~H56へ貼り付けます。

  A     B   C   D   E   F   G   H
1 2007/11
2 日曜日 尾張 三河 駿河 甲斐 越後 信濃 安芸
3 1   織田 徳川 今川 武田 上杉 真田 毛利
4 2   今川 武田 上杉 真田 毛利 織田 徳川
5 3   上杉 真田 毛利 織田 徳川 今川 武田
6 4   毛利 織田 徳川 今川 武田 上杉 真田
7 5   徳川 今川 武田 上杉 真田 毛利 織田
8 6   織田 徳川 今川 武田 上杉 真田 毛利

10 月曜日 尾張 三河 駿河 甲斐 越後 信濃 安芸
11 1   織田 徳川 今川 武田 上杉 真田 毛利
12 2   今川 武田 上杉 真田 毛利 織田 徳川
13 3   上杉 真田 毛利 織田 徳川 今川 武田
14 4   毛利 織田 徳川 今川 武田 上杉 真田
15 5   徳川 今川 武田 上杉 真田 毛利 織田
16 6   織田 徳川 今川 武田 上杉 真田 毛利
17
というフォーマットです。

とりあえず、Sheet3の分をコメントしておきます。
続きを書きますので、まだ締め切らないで下さいね。
    • good
    • 1
この回答へのお礼

長々とご親切にありがとうございました。
仕上がってからお礼しようと思ったのですが、まだしばらくかかりそうなので一旦締め切らせて頂きます。また質問を見かけたらよろしくお願い致します!!
本当に感謝です!!!

お礼日時:2007/12/10 23:17

Sheet3をマスター用シートとして、


Sheet3:
A1:=EOMONTH(TODAY(),-1)+1 として表示書式を「yyyy/m」
B2:=$A$1-WEEKDAY($A$1)+B$1 としてC2~H2へコピー
A3~A12を選択し、「勤務時間」と名前をつけておく。
3行目以下は下記のように入力しておく。
  A     B   C   D   E   F   G   H
1 2007/11 1   2   3   4   5   6   7
2       日   月   火   水   木   金   土
3 1   織田 徳川 今川 武田 上杉 真田 毛利
4 1   尾張 三河 駿河 甲斐 越後 信濃 安芸
5 2   今川 武田 上杉 真田 毛利 織田 徳川
6 2   駿河 甲斐 越後 信濃 安芸 尾張 三河
7 3   上杉 真田 毛利 織田 徳川 今川 武田
8 3   越後 信濃 安芸 尾張 三河 駿河 甲斐
9 4   毛利 織田 徳川 今川 武田 上杉 真田
10 4   安芸 尾張 三河 駿河 甲斐 越後 信濃
11 5   徳川 今川 武田 上杉 真田 毛利 織田
12 5   三河 駿河 甲斐 越後 信濃 安芸 尾張

Sheet1は、従業員別カレンダーとして、
Sheet1:
A1:=Sheet3!$A$1
B1:=Sheet3!B$2 として、表示書式を「aaa」と設定したうえで、C1~H1へコピー。
B2:=B$1 として、表示書式を「d」と設定したうえで、C2~H2へコピー。
B3:=IF(ISNA(MATCH($A$2,Sheet3!B$3:B$12,0)),"",INDEX(Sheet3!B$3:B$12,MATCH($A$2,Sheet3!B$3:B$12,0)+1,1))
とし、C3~H3へコピー。
B4:=IF(B3="","",INDEX(勤務時間,MATCH($A$2,Sheet3!B$3:B$12,0),1))
として、C4~H4へコピー。
B5:=B2+7 として、C5~H5へコピー。
B6~H7:B3~B4の内容をコピー。
B8~H16:B5~H7をブロックごとに、3行分づつコピー。

これで、B2に従業員名を入力すれば、自動的に各日付の下に勤務場所と勤務時間が表示されます。

sheet2は勤務場所別カレンダー
sheet2:
基本的にはSheet1と同じ。
3行目:
=IF(ISNA(MATCH($A$2,Sheet3!B$3:B$12,0)),"",INDEX(Sheet3!B$3:B$12,MATCH($A$2,Sheet3!B$3:B$12,0)-1,0))
4行目:
=IF(B3="","",INDEX(勤務時間,MATCH($A$2,Sheet3!B$3:B$12,0),1))
3行目~4行目を、6~7行目、9~10行目、12~13行目、15~16行目へコピーすればOK。
これで、B2に勤務場所を入力すれば、自動的に各日付の下に従業員名と勤務時間が表示されます。

一応、実験済ですがお望みの結果でなければご容赦。。。

この回答への補足

ありがとうございました。
ご教授頂いた内容で自分なりに作り変えてかなり作表が進みました。
ただ、色々考えてみたのですが、勤務場所が二つある場合や同じ日に2つの時間帯で勤務している場合のカレンダーへの反映方法が分かりません。何か方法はございませんでしょうか?
よろしくお願い致します。

補足日時:2007/11/20 16:16
    • good
    • 0

少し整理させてください。


子供の学校の時間割のようなものでいいのでしょうか。
 日  月  火
 織田 徳川 豊臣
1尾張 三河 中村
 6~ 7~ 8~

 豊臣 織田 徳川
2中村 尾張 三河
 8~ 6~ 7~

*基本ファイルというと、横軸に曜日、縦軸に数字だけの空白の予定表ですね。
*で、たとえば水曜日に「1」と入力すれば、「徳川、三河、7~」と表示され、「2」と入力すれば「織田、尾張、6~」と表示さればいいのでしょうか。

この回答への補足

ご返答が遅くなってすみません。下記、おっしゃった通りです。

*基本ファイルというと、横軸に曜日、縦軸に数字だけの空白の予定表ですね。
*で、たとえば水曜日に「1」と入力すれば、「徳川、三河、7~」と表示され、「2」と入力すれば「織田、尾張、6~」と表示さればいいのでしょうか。

基本ファイルの週間データが月間のカレンダー2種に反映するという形です。できたら1日だけ時間変更なども何か表に入力したら反映するようにしたいです。
マクロになるのでしょうか?

補足日時:2007/11/13 21:52
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

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

このQ&Aを見た人が検索しているワード

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

Q【大至急お願いします!!】エクセルを使ってシフト表を作成したい

【大至急です!!】
エクセルを使ったローテーションの作成方法を教えてください!!
エクセル初心者です。

人事異動で以下のような窓口当番のローテーションを作成することになりました。

会社のパソコンのセキュリティ上フリーソフトは使用できず、また、私自身のパソコンスキルからエクセルを使用して作成するよりほかないと考えています。
(私自身はマクロは使えません。)

エクセルのバージョンは2010です。

どのような方法があるか詳しくお教え下さい。

1.10名程度で2つの窓口を担当する。

2.1つの窓口に1名の担当者がつきます。

3.担当者は午前と午後で交代する。(=2名×2名で1日つき4名が必要)

4.休暇や繁忙時期を考慮する必要があるため、適宜担当できない日を考慮する必要がある。(繁忙期や休暇というのは、人によって取得日が違うため個別対応が必要という意味です。)

5.担当者の経験が分かれるため、10名を2グループに分け、なおかつ顔合わせもランダムになるようにしたいです。



ざっくりしているかもしれませんが、以上です。宜しくお願いします。

【大至急です!!】
エクセルを使ったローテーションの作成方法を教えてください!!
エクセル初心者です。

人事異動で以下のような窓口当番のローテーションを作成することになりました。

会社のパソコンのセキュリティ上フリーソフトは使用できず、また、私自身のパソコンスキルからエクセルを使用して作成するよりほかないと考えています。
(私自身はマクロは使えません。)

エクセルのバージョンは2010です。

どのような方法があるか詳しくお教え下さい。

1.10名程度で2つの...続きを読む

Aベストアンサー

>窓口が午前・午後各2名ある場合は各列にコピペして増やせば良いのでしょうか
いや、全員を2つのグループに分けてそれぞれのグループから1人ずつという風に理解していたので、その表は一人しか選びません。だって、経験によって2つのグループに分けるのですから、多分ベテランと新人のグループに分けるんでしょう?ですから、ベテラン用の表と新人用の表を2つつくってそれぞれから1人ずつ選ぶという使い方を想定しています。
もし一つの表で2人選ぶということであれば(もちろんそれが要求仕様なのですが)、根本的に作り替えなければならないので、申し訳ないですがお手伝いできないです。
ただ、別の方がアイデアをお持ちかもしれませんので、その「担当者の経験が分かれるため、10名を2グループに分け」が具体的にどういう意味なのか捕捉されておくとよいでしょう。不躾ながら正直言うとベテラン用と新人用で分けてそれぞれから一人ずつ選べばいいんじゃないかなぁ、としか思えないのです。

>お教えいただいた形の場合、何か入力するたびに再計算されるのですが、そもそもそうゆうものなのでしょうか?
そうです。ですから、エクセルの設定を手動計算にする必要があります。
リボンに「計算」というタブがあります。そこに「計算方法の設定」という項目がありますから、そこで設定します。詳しくはこちらをどうぞ↓。
https://121ware.com/qasearch/1007/app/servlet/relatedqa?QID=012854
再計算するにはF9を押します。

>午後当番→同じ方が午前当番となってしまう事例が発生しています
それはそうなると知っていました。午前と午後で交代するということだけだったので、日付が変われば午後と午前でつながってもいいという意味だと思っていました。でも午後-午前も一緒に禁止する方が実装するのは簡単です。Plan Optimized の部分は第一日目の午前を除いて、全部同じにすればいいです。つまり第一日目の午後をそのままま全シフトにコピーすれば午後-午前もなくなります。
ただ前の月の最後のシフトとの関係は人間が確認しなければならないです(これは前のバージョンでも同じ)。

>何度再計算しても各人の当番回数がかなりばらついてしまいます。
そうですね。それは手で調整することを想定しています。私の手元では5人の表を作ったので何回かやるといい感じのが出てくるのですが、それでも特定の期間にかたまってしまうというようシフト表になってしまいます。10人でやるとさらに理想的なシフト表ができにくいかもしれません。でもまるっきり白紙の状態から手で作るよりはかなり楽になるのと思うのですが。
また、本質的な解決方法じゃないですが、過去の3シフトに入っていた人からは選ばない、というような条件を付け加えると、少しはましになるようです。「過去の3シフト」の縛りを加えるには、Plan Optimized の項目で第2日目の午後シフトを =If(CountIf(B24:D24,"√")>0,"x",If(E4="x","x","")) として下と右にコピーしていきます。ただし、この縛りを入れると、とても規則的なシフト表になるとか、誰も入れない日がいくつも出てくるとか、別の問題も出てきます。

>パソコンに詳しい方からすれば無茶な質問であることは理解しております。
私はそうは思いませんが、ただエクセルのファイルのままで渡せないとかいうのがありますので、こういう掲示板でやり取りするとちょっと時間かかるのはたしかですね。

>窓口が午前・午後各2名ある場合は各列にコピペして増やせば良いのでしょうか
いや、全員を2つのグループに分けてそれぞれのグループから1人ずつという風に理解していたので、その表は一人しか選びません。だって、経験によって2つのグループに分けるのですから、多分ベテランと新人のグループに分けるんでしょう?ですから、ベテラン用の表と新人用の表を2つつくってそれぞれから1人ずつ選ぶという使い方を想定しています。
もし一つの表で2人選ぶということであれば(もちろんそれが要求仕様なのですが)、根本...続きを読む

Qエクセルで作成したカレンダーに「当番の名前」を自動的に入力する方法をお

エクセルで作成したカレンダーに「当番の名前」を自動的に入力する方法をおしえてください。


毎月エクセルで朝礼当番表を作っています。
土、日、祝がお休みです。
たとえば、1日に最初の人の名前を入力すると休みの日はぬかして、
順番に当番が入力されるという関数があれば教えてください。

1行目に「日にち」
2行目に「曜日」
3行目に「当番者名」

と簡単な表です。

リストからコピペしたら間違えてしまいました。

オートフィルで入力しようかと思ったのですが、休みの日を抜かすのが面倒で。


よろしくお願いします。

Aベストアンサー

>6行目(B6セル)に =IF(B6=0,MOD($B2-2+DAY(B3)-SUM($B5:B5),$B1)+1,0)
式を分解してみるとわかりやすいです。
更に
7行目に作業列 =$B2-2+DAY(B3)
    日にちごとに 日にち事に連続した番号になります。
8行目に作業列 =MOD($B2-2+DAY(B3),$B1)
    その番号を 人数で割ったあまりがでます。
9行目に作業列 =SUM($B5:B5)
    休みの数の合計がでます。

と入れて右へコピィしてみてください。
式のセルを指定する $B2 とか$マークが付く場合と付かない場合がありますよね。
絶対参照と呼びますが、意味は右へコピィしてもセルの位置を変動させないということです。
例えば
9行目の=SUM($B5:B5)の式を右へコピィした場合
=SUM($B5:B5)
=SUM($B5:C5)
=SUM($B5:D5)
・・・
と合計する範囲が広くなっていくように設定してあります。

別件ですが
カレンダーの日付をコピィの作業をしなくても良いように関数をいれておくことも出来ます。
   A     B   C   D・・・
1 人数    5   年  2010
2 最初の人  1   月   1
3 日付    10/1 10/2
4 曜日    金曜  土曜・・・
とD1セルに 年 の数値 D2セルに 月 を数値で入れます。
日付のB2セルには =DATE($D1,$D2,COLUMN(A1)) と入れて右へコピィしておきます
ここも 年と月を決める D1とD2のセルを指定するときは右へコピィしても変動しないように
$マークをつけておきます。
COLUMN(A1)はA1セルの列の番号です。右へコピィした場合に
COLUMN(B1)
COLUMN(C1) と変動する様に $マークは付けません。
*COLUMN(A1)は COLUMN(A2)でもACOLUMN(3)でもかまいません。
曜日のB3セルには =B2 と入れます。書式=>セル で表示形式のタブ ユーザ定義 で aaa
と入れると その日の表示が曜日になります。
B3セルも右へコピィします。
毎月、月の部分を変更するだけで その月のカレンダーになります。
表示形式については
http://www.excel.studio-kazu.jp/lib/e3g/e3g.html
などを参考にしてください。

>6行目(B6セル)に =IF(B6=0,MOD($B2-2+DAY(B3)-SUM($B5:B5),$B1)+1,0)
式を分解してみるとわかりやすいです。
更に
7行目に作業列 =$B2-2+DAY(B3)
    日にちごとに 日にち事に連続した番号になります。
8行目に作業列 =MOD($B2-2+DAY(B3),$B1)
    その番号を 人数で割ったあまりがでます。
9行目に作業列 =SUM($B5:B5)
    休みの数の合計がでます。

と入れて右へコピィしてみてください。
式のセルを指定する $B2 とか$マークが付く場合と付かない場合がありますよね。
絶対参照と呼び...続きを読む

Qエクセルの当番表を作りたいのですが

似たような質問があると思いますが、なかなか合ったものが無かったので質問させていただきます。

1か月の活動内容が記載されたカレンダーがありまして、A列に日付が1か月分入っています。
B列に当番の名前を入れたいのですが、毎日では無くて飛び飛びになっています。
具体的には、火・木・土・日だけしか当番の名前は入りません。
月次の予定表を兼ねているので、火・木・土・日だけの表示にする事はできません。
当番は10人で、1年間同じ順番で回ってきます。
大した数ではないので今まで直接打込んでいましたが
何か自動でできるような便利な方法がありましたら教えてください。

もう一つ、C列には、管理者が入ります。
管理者は火・木担当と、土・日担当がいます。
管理者は、曜日固定でいつも同じ人が入ります
こちらも何か便利な方法があれば教えてください。
よろしくお願いします。

Aベストアンサー

A1,B1,C1,D1,E1セルに、それぞれ、日付、当番の名前、管理者の名前、当番選択日、管理者選択日、というタイトルを記入しておきます。

A2セルから下に日付があるとして、D2セルに、
=IF(OR(WEEKDAY(A2)=1,WEEKDAY(A2)=3,WEEKDAY(A2)=5,WEEKDAY(A2)=7),1,"")
と入力して下にドラッグコピーします。これで、火・木・土・日の行は1、他はブランクになります。

次に、D1セルを選んで、昇順に並べ替えます。
これで、選択日の行が最初に並びます。

B2セルから下に、10人の当番の名前を、順番に記入します。

次に、B2からB11までの10人分のセルを選んで、D2セルに1が記入されているところまで、下にドラッグコピーします。
これで、全ての火・木・土・日の行に当番10人の名前が自動的に順番に記入されます。

C2セルから下に、4人分の管理者の名前を、順番に記入します。

次に、C2からC5までの4人分のセルを選んで、D2セルに1が記入されているところまで、下にドラッグコピーします。
これで、全ての火・木・土・日の行に管理者の名前が自動的に順番に記入されます。

あとは、A1セルを選んで、昇順に並べ替えて、日付順の表に戻します。

A1,B1,C1,D1,E1セルに、それぞれ、日付、当番の名前、管理者の名前、当番選択日、管理者選択日、というタイトルを記入しておきます。

A2セルから下に日付があるとして、D2セルに、
=IF(OR(WEEKDAY(A2)=1,WEEKDAY(A2)=3,WEEKDAY(A2)=5,WEEKDAY(A2)=7),1,"")
と入力して下にドラッグコピーします。これで、火・木・土・日の行は1、他はブランクになります。

次に、D1セルを選んで、昇順に並べ替えます。
これで、選択日の行が最初に並びます。

B2セルから下に、10人の当番の名前を、順番に記入します。

次に、B...続きを読む

Qエクセルで勤務シフト表の作成。

エクセル表で年間の勤務シフト表を作成しております。
独自で考えて作っていってるんですが、改良したい点がいくつかあり教えて頂きたい点があります。

現在は色んなデータを入れているシートを一つと、1か月ごとのシフト表を12個用意しています。
 
まず、4月度のシートに『4月度』と入力したら日付と曜日が自動的に入る様にするにはどのような関数が使えますか?
12枚のシートは全て同じ書式なので、日付と曜日を空白にしておいて、自動的に表示したいのです。
付け加えるなら、日曜と祝日にはフォントもしくはセルに色をつけたいのです。

もう1点。社員ごとに労働時間の累計を出していきたいのですが、現在は表に社員番号を入力すれば氏名が表示されるようにしており、例えばA1のセルの個人の数字を来月度もA1のセルの人と合計する式しか入れていません。
これだと各月の表の社員の並びが変わった時、別の社員の数字を合計してしまいます。
社員番号を入れれば各月の労働時間を合計するにはいかがいたしたらよろしいでしょうか?

長文の上、説明不足があるやも知れませんが宜しくご教授下さい。

エクセル表で年間の勤務シフト表を作成しております。
独自で考えて作っていってるんですが、改良したい点がいくつかあり教えて頂きたい点があります。

現在は色んなデータを入れているシートを一つと、1か月ごとのシフト表を12個用意しています。
 
まず、4月度のシートに『4月度』と入力したら日付と曜日が自動的に入る様にするにはどのような関数が使えますか?
12枚のシートは全て同じ書式なので、日付と曜日を空白にしておいて、自動的に表示したいのです。
付け加えるなら、日曜と祝日には...続きを読む

Aベストアンサー

___A_B__C__D__AF
1_2009_年__4_月度_
2_日付_16_17__18_(16)
3_曜日_木_金__土_(土)

B2
=DATE($A$1,$C$1,16)
書式:ユーザー定義 d

B2:AF3選択[B2→AF3の順に]
・最初の条件付書式:数式が▼
=AND(MONTH(B2)=$C$1+1,DAY(B2)>15)
書式:フォント白

後半の質問は具体的な表を提示して
別スレを立てたほうがいいかもしれません。

QEXCELで複雑な表を作るにはどうしたらよいか?

EXCELで複雑な表を作るにはどうしたらよいか?
EXCELやWORDの基本的な知識はあります。
しかしそれらを使って複雑な表や書式を作ることが出来ません。
EXCELであれば表の中に表を作ったりすることがなかなか出来ません。
列や行を挿入して複数のセルを一つにするなどの作業を繰り返すのでしょうが、
頭の中が混乱してうまく出来ません。
職場で即戦力として動くにはこういった能力が必要です。
どうやって鍛えたらよいでしょうか?
何かよいテキストやサイトはありますか?
ちなみに自宅のOFFICEは2007です。
職場のは2000と2003です。
詳しい方教えてください。お願いします。

Aベストアンサー

No4です。
既に、表の形が示されているのであれば、そのメモに従って根気強く作成していきましょう。
1、最初は、メモに従って数値や文字を入れる枠を作っていきます。
2、セルの結合で横方向や縦の文字列のセルを作ります。
3、罫線をいれて大まかな表が出来たら、文字や数値を入れていきます。
4、入力した文字の幅を見ながらセルの幅や文字の大きさを調整します。
(私流でいえば、シート全体を選択して セル=>配置=>縮小して全体を表示 にチェックをいれて作業すると便利です)
5、文字の位置、フォント、サイズなどで体裁を整えます。
6、最後に、印刷プレビューで確認して、余白やセル幅を調整して最後にします。
エクセルやワードに限らずですが
与えられた仕事の意味を含めて理解して、上司からメモをもらわなくてもシートがイメージできる様に
なりましょう。
職場で戦力とは、文字の入力が速いとか表を作るのが早いとかではなく、
どの様な結果を出せばよいのかそれがイメージできる力の方が戦力になりますよ。
がんばってください。

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Qエクセルでシフトとカレンダーを一緒に管理したいです。

シフト表とカレンダーがあるのですが、出来れば一緒にまとめたいと思っています。
理想としても添付画像のような感じです。(赤枠部分にシフトを表示)

カレンダーなのですが、その月を入力すると自動で日付が変わるようになっています。
シフトも例えば「Aさん」を選択すると「Aさん」のシフトに自動で変わるように出来ればと考えています。
ただ、毎月日付のセルの位置も変わってしまう為、連動して変わるようにするにはどうすればいいのか困っています。

併せて日付がない所は文字が表示されない様に出来ればと・・・。
もしくはそれに近いものが作成したいのです。
分からないばかりで申し訳ないのですが、どなたか知恵をお貸し下さい!

Aベストアンサー

こんばんは!
一例です。

↓の画像で上側がSheet1で各日のシフトを入力し、下側のSheet2に表示させるとします。

まずSheet1の日付をシリアル値で操作します。
C1セルに西暦年・E1セルに月の数値をそれぞれ入力します。
D2セル(セルの表示形式はユーザー定義から d としておく)に
=IF(MONTH(DATE($C1,$E1,COLUMN(A1)))=$E1,DATE($C1,$E1,COLUMN(A1)),"")
という数式

D3セルに
=IF(D2="","",TEXT(D2,"aaa"))
という数式を入れ、D2・D3セルを範囲指定 → D3セルのフィルハンドルで月末(31日)までの
AH列までコピー!
これでC1・E1セルの数値を入れ替えるだけで横1列のカレンダーができます。

次にSheet2のC1セルに
=DATE(Sheet1!C1,Sheet1!E1,1)
という数式を入れ、セルの表示形式はユーザー定義から
m月
としておきます。(このC1セルは今後手を加えません)
A4セル(セルの表示形式はユーザー定義から d としておく)に
=IF(MONTH($C$1-WEEKDAY($C$1)+COLUMN(A1)+7*(ROW(A2)/2-1))=Sheet1!$E$1,$C$1-WEEKDAY($C$1)+COLUMN(A1)+7*(ROW(A2)/2-1),"")

A5セルに
=IF(A4="","",INDEX(Sheet1!$D$4:$AH$100,MATCH($A$1,Sheet1!$C$4:$C$100,0),MATCH(A4,Sheet1!$D$2:$AH$2,0))&"")
という数式を入れ、A4・A5セルを範囲指定 → A5セルのフィルハンドルで「土」のG列までフィル&コピー
そのまま(2行が選択されている状態)で下へ2行ずつフィル&コピー!

これでSheet2のA1セルを入れ替えるだけでSheet1のデータが日付毎に表示されます。

※ このままではセルの左上にエラーチェックオプションのマークが表示され
目障りだと思いますので、
ファイル → オプション → 数式 → エラーチェックの項目の
「バックグラウンドでエラーチェックを行う」のチェックを外しOK

※ Sheet1のC1・E1を変えるだけでSheet2のカレンダーは連動するようにしています。

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

こんばんは!
一例です。

↓の画像で上側がSheet1で各日のシフトを入力し、下側のSheet2に表示させるとします。

まずSheet1の日付をシリアル値で操作します。
C1セルに西暦年・E1セルに月の数値をそれぞれ入力します。
D2セル(セルの表示形式はユーザー定義から d としておく)に
=IF(MONTH(DATE($C1,$E1,COLUMN(A1)))=$E1,DATE($C1,$E1,COLUMN(A1)),"")
という数式

D3セルに
=IF(D2="","",TEXT(D2,"aaa"))
という数式を入れ、D2・D3セルを範囲指定 → D3セルのフィルハンドルで月末(31日)ま...続きを読む

Q(Excel)あるセルに文字を入力しただけで、同じブック内のほかのワークシートにも、同じ文字が自動的に入るようにするには?

こんにちは。
質問内容はタイトルのとおりです。

あるワークシートのあるセルに文字を入力すると、ほかのワークシートのセルにも同じ文字が自動的に書き込まれる方法を知りたいです(ブックは同じ)。複数のワークシートを制御するには、やはりマクロを使うのでしょうか?

よろしくお願いします。

Aベストアンサー

clam_chowderさん、こんにちは。

Sheet1のA1にたとえば「100」と入力しますね。
Sheet2のA1に、これと同じ数値を表示するには、
 =Sheet1!A1
でOKです。

数式をいれるのが苦手なら、
Sheet2のA1セルで「=」を入力すると、数式入力状態に入りますから、
ここでSheet1のシートタブをクリックし、
リンクしたいA1セルをクリックしてEnterすると、
自動的にさきほどと同じ式が入ります。

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

Qエクセルで画像を透過させて画像の上に入力した文字を表示させる方法

この度エクセルで、レイアウトして広告を作っているのですが、セルに入った文字列を「図をファイルから挿入」した画像の上に表示させてレイアウトしたいのですが、どうしてもセルに入った文字が消えて、指定した画像で隠れてしまいます。

なんとか画像の上にセルに入った文字列を表示させる方法はありませんか??

教えてください

Aベストアンサー

上に載せたい文字列のセルをコピーして
Shiftを押しながら「編集」「図のリンク貼り付け」で
セルの内容を図形か出来ます。
これを画像の上に重ねればお望みの状態になります。
※枠線が出てきますので、不要なら「ツール」「オプション」「表示」の
「枠線」のチェックをはずしてください。

別の方法
オートシェープを呼び出して「テキストの追加」
数式バー上にカーソルを移して =A1 のように文字の入ったセルを参照表示させる。
「塗りつぶし」「塗りつぶし効果」「図」「参照」で図をオートシェープの塗りつぶしとして表示させる。


人気Q&Aランキング