advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 13166 for 日付 (0.004 sec.)
[[20120322144500]]
#score: 2423
@digest: d6176845f0d27a1de909b28310ef8932
@id: 58236
@mdate: 2016-06-10T02:26:30Z
@size: 13415
@type: text/plain
#keywords: 人番 (34030), 4949 (27570), (49 (22401), mxr (15177), 務表 (14162), 示シ (8762), タシ (8607), 個人 (7591), 表!$ (7313), 勤務 (6669), 記() (5294), 転記 (5054), 社時 (4871), 力シ (4735), 退社 (4267), 蓄積 (4144), 力フ (3872), 日分 (3552), シー (3186), 日付 (2766), デー (2766), タ") (2725), ート (2533), ータ (2445), 勤時 (2346), 入力 (2253), 値貼 (2218), 出勤 (2087), ☆ (1844), 一行 (1834), 番号 (1707), に転 (1652)
『値コピー』(4949)
WindowsXP Excel2003 勤務表というシート A2に個人番号B2に氏名C2に出勤時間D2退社時間があります。 シート名を1から31まで作成し1から31のシートには個人番号をすでに入力してあります。 勤務表のA2に22日と入力すれば22のシートに移動しかつ個人番号と一致する行へ 勤務表のデータを値コピーみたいなこと可能でしょうか? 勤務表は個人個人が入力するため一人が入力し別シートに値コピーが完了すれば 勤務表のデータは削除され次の人に代わるみたいなシステムを組みたいのですが。。 わかる方ご教授ください。 (4949) ---- 勤務表というシートにしか入力しないのであれば、 日付別のシートに転記するという操作は多少無駄が多いような気がします。 私なら、全部のデータを勤務表に蓄積する形にしますね。 日付別に表示させるなら、検索関数などで日付などをキーにして (多少の工夫が必要ながらも)やることができます。 31シートも必要はありません。 最終的にデータがひとつのシートに固まっていたほうが、 たとえば、個人別集計を行うときにも簡単になると思うのですが。 御希望のことは、マクロを使えばできます。 (みやほりん) ---- シート名は勤務表ですが日々の作業時間を管理する資料(作業記録みたいなもの)なので日付別に転記 がよいと思ったのですが。。 よろしくお願いします。(4949) ---- 私は「元のデータ」をばらばらのシートに転記してしまうよりも、 ひとつのリスト形式にして記録していくことをお勧めします。 人間の能力としても31日分のシートを全部並べて視認、比較するのは 無理だと思うので(もしかしたらできる方がいらっしゃるかもしれませんが) 結果として「指定した日付」のデータがその都度見えるようにできれば 充足できるのではないでしょうか。 たとえば、日付(この場合、年月も含むシリアル値)と個人番号が 必ず入力されて、一日に同じ個人番号の方は一データしかない、 という条件であれば、 =日付&TEXT(個人番号,"0000") という数式で行を特定するKEYデータが作成できます。 このデータは「元のデータ」でひとつしかありませんから 検索関数でこのKEYを探せるようにするのはそれほど難しくありません。 私が提案しているのも一種のシステムです。 [4949]さんが最初想定していた「システム」は敷居の高いマクロを 使わざるを得ない割には、データを分散させてしまうことで、 将来データとして使いにくくなる方法なので、私はお勧めしません。 (みやほりん) ---- >私は「元のデータ」をばらばらのシートに転記してしまうよりも、 >ひとつのリスト形式にして記録していくことをお勧めします。 前回のご回答の時に31日分のシートが必要ないと書かれてましたが その方法をもっと詳しくお教え願いますか? (4949) ---- たとえば ・入力シート(勤務表というシート ですね) ・データシート ・表示シート の3枚のシートを作っておく。 入力 [A] [B] [C] [D] [E] [1] 個人番号 氏名 出勤時間 退社時間 日付 [2] ★ ★ ★ ★ ★ ←2行目のセルに入力 データ [A] [B] [C] [D] [E] [1] 個人番号 氏名 出勤時間 退社時間 日付 [2] ☆ ☆ ☆ ☆ ☆ [3] ☆ ☆ ☆ ☆ ☆ [4] ☆ ☆ ☆ ☆ ☆ 表示 [A] [B] [C] [1] 日付 ★ ←日付を入力 [2] 個人番号 出勤時間 退社時間 [3] ◇◇ □ □ [4] ◇◇ □ □ [5] ◇◇ □ □ [6] ◇◇ □ □ 入力シートの2行目にデータを入力して マクロ等で、データシートへ値を転記します。 表示シートのB1セルで日付を指定したら、データシートから 該当の日付で、個人番号に対応する出勤・退社時間のデータを表示させる 様な仕組みにしておけば、31日分のシートは必要無くなりますよね? ただ >勤務表は個人個人が入力するため この部分が少し気になりますが。。。 どのタイミングで入力して貰う予定なのでしょう? (HANA) ---- HANAさん、フォロー有難う。 以下、一案です。 31日分のシート=特定の日付のデータを検索するシートとお考え下さい。 また、「勤務表」は入力していくデータをためていく場所だとお考え下さい。 「勤務表」のA列に検索用のキーを作成します。 A列である必要性はありませんが、A列にキーがあれば、VLOOKUP関数が 使いやすくなります。 B列に日付、C列に個人番号・・・と一列ずつ右側にずれます。 A列に次の数式。(2行目を想定) =B2&TEXT(C2,"0000") これを3行目以降にコピー。 数字だけのキーができます。 「検索」シートでは検索したい日付を入力します。 すでに個人番号は入力されているということなので、 VLOOKUP関数を検索に使うとすると、データを表示するセルでは次のように 書けます。 =VLOOKUP(日付のセル&TEXT(個人番号のセル,"0000"),勤務表!$A$2:$E$500,列番号,FALSE) 実用的にはデータがなかったり、エラーになるときも考慮しなければいけませんが、 上記の式が基本と成ります。 「検索」シートの日付を入力しなおすことで、いろいろな日付のデータを ひとつのシートで切り替えることができます。 31日分のシートを用意するためのマクロよりも、理解しやすいと思います。 で、「勤務表」を作成するには、入力規則やデータフォームが有効です。 (みやほりん) ---- 確かにこのほうが後々データを使用できますね。 (HANA)さん(みやほりん)さん ありがとうございます。 打ち合わせの結果入力は個人個人ではなく主任が入力していくようになりましたので (HANA)さん(みやほりん)さんの案を参考に作成してましたが、 >表示シートのB1セルで日付を指定したら、データシートから >該当の日付で、個人番号に対応する出勤・退社時間のデータを表示させる >様な仕組みにしておけば、31日分のシートは必要無くなりますよね? これはやはりマクロですか? 検索シートに =VLOOKUP(日付のセル&TEXT(個人番号のセル,"0000"),勤務表!$A$2:$E$500,列番号,FALSE) 上記の式をA4から順に一列ずつ当てはめていきやってみましたが >「検索」シートの日付を入力しなおすことで、いろいろな日付のデータを >ひとつのシートで切り替えることができます。 は検索シートのどこの部分に日付を入力しなおせばよろしいのでしょうか? すみません。理解してないのでよろしくお願いします。 (4949) ---- >検索シートのどこの部分に日付を入力しなおせばよろしいのでしょうか? 実際は入力しなおすというほどのものでもないかと。 シートのどこかひとつのセル、入力する人が便利なところに日付を入力して くれればそれでいいのです。 HANAさんの挙げてくれた例でいうと、 「表示」というシートのB1セルがそうですね。 「表示」シートのB3の式なら、 =VLOOKUP($B$1&TEXT($A3,"0000"),勤務表!$A$2:$E$500,2,FALSE) という式が考えられます。 (みやほりん)(-_∂)b ---- すごいできました。 ありがとうございました。 (4949) ---- HANAさんのご回答で下記の >入力シートの2行目にデータを入力して >マクロ等で、データシートへ値を転記します。 を6行目に変更しました。 マクロでデータシートへ値の転記もう少し詳しく教えていただけないでしょうか? (4949) ---- 基本的には '------ Sub データシートへ転記() Dim MxR As Long With Sheets("データ") MxR = .Range("A" & Rows.Count).End(xlUp).Row Range("A6:E6").Copy .Range("A" & MxR + 1) .Range("F" & MxR + 1).Value = Date End With End Sub '------ こんな感じです。 アクティブシートの A6:E6をコピーして データシートの続きに貼り付け&F列に転記(入力)した日付 を入れるコードです。 実際には ・データがそろっているか確認 ・転記後、元データを削除 ・上書き保存するか 等 手を加えて行く事になると思います。 また >打ち合わせの結果入力は個人個人ではなく主任が入力していくようになりましたので と言う事なので、実際は一行ずつの転記ではないのかもしれません。 日付も別のセルを設けておく方が良いのかもしれません。 並び・入力方向等も 再度考えてみるのが良いかもしれません。 イメージが掴めたら、先に入力フォームの検討をするのが良いかもしれません。 (HANA) ---- 入力フォームは6行目から始まり一行ずつ挿入して下へ蓄積する形をとりましたが 入力フォームの蓄積部分を変更してもデータシートの数字は変わらないので HANAさんがおっしゃってる入力シート転記後削除していく方法がよいですね。 その場合は必ず上書きが必要になります。 このマクロはなぜ2行目に転記されるのでしょうか? よろしくお願いします。 (4949) ---- >入力フォームは6行目から始まり一行ずつ挿入して下へ蓄積する形をとりましたが って事は、それがデータシートも兼ねると思いますが。。。 過去のデータを書き換えたりするなら 同じ場所にある方が、面倒もなさそうに思います。 入力シートに、前のデータを残しておくのに データシートにデータを転記しようと考えておられるのは どういった結果を期待していますか? (HANA) ---- 入力シートは一行ずつ追加していくので表示シートの計算式が追加するにつれてずれていくので 固定のシートが必要かと思いまして。 一行ずつ追加しても表示シートの計算式がずれないのなら入力シートを蓄積のシートにもできるのですが。 (4949) ---- >一行ずつ追加しても表示シートの計算式がずれないのなら =VLOOKUP($B$1&TEXT($A3,"0000"),勤務表!$A$2:$E$500,2,FALSE) の式で、勤務表のシートを参照している範囲がずれてしまうという事であれば タイトル行を含めた範囲を参照先にしてみて下さい。 6行目に新しいデータを入れる場合 勤務表!$A$5:$E$500 の範囲を参照します。 勤務表シートの6行目を挿入した場合、この範囲は 勤務表!$A$5:$E$501 の様に、範囲の上側は変わらず、範囲の下側が一つずつ増えて行きます。 データが増えるに従って、参照範囲も増えますので 丁度良い範囲を参照範囲にしておいてもそんなに不安は無いと思います。 (HANA) ---- タイトルのところまですると確かに上限は変更なく下限のみ増加していきました。 ありがとうございました。 (4949) ---- マクロを使うと色々なことが出来る様になりますが 使わなくても色々な事が出来ると思います。 ちなみに > このマクロはなぜ2行目に転記されるのでしょうか? に関してですが、実際は 2行目に転記されるのではなく A列の入力が有る最後の行の一つ下の行に転記されます。 例えば、 1行目にタイトル行だけ入っている状態ならA2セル 3行目までデータが入っていて、A3セルが埋まっているならA4セル に転記されます。 例えば、A4セルに何かを入力して A10セルをアクティブにした後、Ctrl + ↑ を押してみて下さい。 アクティブセルは、A4セルまで移動します。 コード内の .Range("A" & Rows.Count).End(xlUp) この部分が、Ctrl + ↑ をしたのと同じイメージです。 A4セルの .Row(行)は 4 なので MxR = .Range("A" & Rows.Cont).End(xlUp).Row MxR と言う変数には「4」が入ります。 その後 Rane("A6:E6").Copy .Range("A" & MxR + 1) アクティブシートのA6:E6セルをコピーして データシートの A列の MxR+1 = 4+1 = 5 ・・・・A5セル に貼り付けます。 .Range("F" & MxR + 1).Value = Date ここでは、F5セルに日付を入力します。 (HANA) ---- データ転記を行う際にB5に日付C5に個人コードを入力するようにしてますがB5とC5が空欄だった場合は 転記しないようにマクロに組み込めますか? '------ >Sub データシートへ転記() >Dim MxR As Long > With Sheets("データ") > MxR = .Range("A" & Rows.Count).End(xlUp).Row > Range("A6:E6").Copy .Range("A" & MxR + 1) > .Range("F" & MxR + 1).Value = Date >< End With >End Sub '----- このマクロを使用してます。 よろしくお願いします。 (4949) ---- >B5とC5が空欄だった場合 ってのは、どちらか片方でも入っていれば転記して良いのですか? ↓目的に合うものを使用して下さい。 Sub SAMPLE() If Application.CountA(Range("B5:C5")) = 0 Then MsgBox "両方入力がありません。" End If If Application.CountA(Range("B5:C5")) = 1 Then MsgBox "片方入力があります。" End If If Application.CountA(Range("B5:C5")) = 2 Then MsgBox "両方入力があります。" End If End Sub (HANA) ---- 以前下記マクロを考えていただきありがとうございました。 使用してましてコピー→貼り付け の作業からコピー→値貼り付けに変更したいのですが可能でしょうか? 計算式が入っていると計算式以降に転記されることを回避したいと思っています。 '------ Sub データシートへ転記() Dim MxR As Long With Sheets("データ") MxR = .Range("A" & Rows.Count).End(xlUp).Row Range("A6:E6").Copy .Range("A" & MxR + 1) .Range("F" & MxR + 1).Value = Date End With End Sub '------ 宜しくお願いします。 (4949) 2016/06/09(木) 11:34 ---- ずいぶん古いトピなので、誰かがいたずらで【アゲ】たのかと思いましたがご本人でしたか。 新規トピでもよかったとは思いますが。 MxR = .Columns("A").Find(What:="*", LookIn:=xlValues, SearchDirection:=xlPrevious).Row で試してみてください。 (β) 2016/06/09(木) 12:33 ---- すみません。 やり方がまずかったのか値貼り付けにならないですが 。。(4949) 2016/06/09(木) 13:09 ---- あぁ、コピー から 値貼り付けへの変更でしたね。 ということは最終行取得は、元のままでいいのですね? (βがはやとちりして、A列の下のほうに、計算式で "" になっているところがあって、そこは空白扱いにしたいということだと思ってしまいました。) ということで、そこは元に戻して Sub データシートへ転記() Dim MxR As Long With Sheets("データ") MxR = .Range("A" & Rows.Count).End(xlUp).Row ' Range("A6:E6").Copy .Range("A" & MxR + 1) .Range("A" & MxR + 1).Resize(, 5).Value = Range("A6:E6").Value .Range("F" & MxR + 1).Value = Date End With End Sub (β) 2016/06/09(木) 20:00 ---- .Range("A" & MxR + 1).Resize(, 5).Value = Range("A6:E6").Value←ここの部分を(A6:E10) などへしたい場合の変更箇所を教えてください。 (4949) 2016/06/10(金) 09:13 ---- 転記先.Value = 転記元.Value の構文では、左右のセル数が同じである必要があります。 Range("A6:E6") の場合は 横5列、縦は1行ですから 転記先起点セルを 横に 5つサイズを広げた .Range("A" & MxR + 1).Resize(, 5).Value としました。 A6:E10 であれば、横 5列、縦 5行 ですから、転記元起点セルを縦にも 5行サイズを広げます。 .Range("A" & MxR + 1).Resize(5, 5).Value ですね。 Resize(行数,列数) です。慣れると便利です。 どうしても、わかりにくいということであれば、コピペで 値貼り付け操作がありますね。 これをマクロ記録とれば、コピペスタイルのコードは生成されますけどね。 (β) 2016/06/10(金) 09:57 ---- なるほど。。。 できました。 ありがとうございました。 (4949) 2016/06/10(金) 11:26 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201203/20120322144500.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97057 documents and 608302 words.

訪問者:カウンタValid HTML 4.01 Transitional