プロが教えるわが家の防犯対策術!

Excelでできるかわからないのですが教えてください。
一つのシートに日付と記入項目10項目(数値)を入力する
シートを作成しその作成したシートの日付を基準に
別に作った集計用シートにデータを写し保存することは
できるでしょうか?
入力シートは入力しては消して次の日にまた新たなデータを入力してと
入力するためだけの専用シートにしたいです。
また集計シートは各日にち毎のデータを集計するシートにしたいと
思っています。
いろいろ調べたのですが良くわからないので
アドバイスいただけませんでしょうか。
よろしくお願いいたします。

A 回答 (4件)

可能かって話なら、可能だと思います。


但し、VBAが書けるならって事になるでしょう。

簡易的なデータフォームではダメなのでしょうか?
http://www.juno-e.com/excel/waza/waza10.htm
    • good
    • 0
この回答へのお礼

有難う御座います。
簡易的なデータフォームも考えたのですが
入力シートはメールにて他の人へ送らなくてはいけないので
できれば専用のシートで記入したいと思います。
ちなみにメール送信用にコピーして新しいブックに貼付けして
保存というマクロまでは作ってみました。
お手数ですが何か良い案がありましたら教えてください。

お礼日時:2006/10/16 08:57

 


>入力シートは入力しては消して次の日にまた新たなデータを入力
データ作成には単に入力するだけではなくて
修正、削除もあると思いますがその時は?

何れにしろ、No1さんの回答にあるフォームを使うか
集計シートに直接入力する方がベターだ思いますが。。。
 
    • good
    • 1
この回答へのお礼

有難う御座います。
修正の時はもう一度記入して上書きで
削除の時は・・・どの様にしたらスムーズですかね?
すみません。そこまで考えてませんでした。
数値なので0を記入でもよいかなと考えてはいます。

お礼日時:2006/10/16 09:02

#1です。



データ報告用シートを配布して記入させ、それを回収して別のブックにデータを蓄積したいって感じですか?

こちらの質問に近いですか?
http://okwave.jp/qa2470422.html
    • good
    • 1
この回答へのお礼

有難う御座います。
ほぼ同じかと思います。
できれば私の場合は会社ごとのシートではなく
一つのシートの日付の一致する行にデータを入れることが
できないかと思っています。
私も教えて頂いた質問の方と同じようにVBAについて
素人同然ですので、お手数ですが式を教えていただけると
助かります。わがまま言って申し訳御座いませんが
宜しくお願い致します。

お礼日時:2006/10/18 08:28

#1です。



> 一つのシートの日付の一致する行にデータを入れることができないかと思っています。

1)入力用シートに日付と記入項目10項目(数値)がある
2)別ブックの集計用シートには既に日付が入っている
3)入力用シートの日付と集計用シートの日付がマッチする行に、入力用シートの10項目(数値)を転記する?

こんな風に想像しましたが、その通りだとしても疑問が残ります。
なぜ集計用シートに元から日付あるのか、同じ日付の入力用シートがあるのか(あった場合の処理は上書きなのか加算なのか)、入力用シートの日付が集計用シートになかったらどうするのか、、、等など。

マクロ(VBA)は細かいシートの構造が解らないと書けないんです。
こちらは質問文章から想像で組みますので、質問者さんが自分の環境に合わせて修正出来る程度の知識を持っていないと不毛なやり取りを重ねる事になります。
「百聞は一見にしかず」と言いますが、逆に言うなら「一見」出来ない以上「百聞」くらい細かく説明が無いとお互い通じないのです。

失礼ながら、先の質問者さんへ書いたマクロをテストデータを作って動かせるくらいのレベルはお持ちでしょうか?
一応、想像だけで書きましたが必要に応じて修正して下さい。

新規ブック、Book1、Sheet1の A1:D1 に
2006/1/10  hoge1  hoge2  hoge3

新規ブック、Book2 の A1:A365 に 2006/1/1 ~ 2006/12/31 と入れて下記マクロを Book2 の標準モジュールに書きます。
この2つ以外のブックは開いて無いのが実行の条件です。

Sub Test()
Dim ws As Worksheet, wb As Workbook, r

 For Each wb In Workbooks
  If Windows(wb.Name).Visible Then
   If Not wb Is ThisWorkbook Then
     Set ws = wb.Worksheets(1)
     Exit For
   End If
  End If
 Next wb

 If ws Is Nothing Then Exit Sub

 With ThisWorkbook.Worksheets(1)
  Set r = .Range("A:A").Find(What:=ws.Range("A1").Value, _
       After:=.Range("A65536"), LookIn:=xlFormulas, _
       LookAt:=xlWhole, MatchCase:=False)
 End With

 If r Is Nothing Then
   MsgBox "見つからない", vbExclamation, "エラー"
 Else
   ws.Range("B1:D1").Copy r.Offset(0, 1)
 End If

End Sub
    • good
    • 1
この回答へのお礼

有難う御座います。
一度頂いた式にてトライしてみます。
確かに私の質問だと不明な点がありますので
いろいろ試行錯誤させていただき不明な点がありましたら
また質問させて頂きたいと思うのですがよろしいでしょうか?
ひとまず格闘してみます。

お礼日時:2006/10/19 08:32

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