アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルで日報を作っております、1日から31日までの31枚のシートがひとつのブックの中にあり1日のシートのA1のセルに”1月1日”と入力すれば後の30枚のシートに自動で入力できる関数もしくはマクロがありませんでしょうか、曜日も表示したいです。

A 回答 (3件)

マクロでやるとこんな感じですかね。



1日のシートのタブを右クリックして「コードの表示」を選択すると、VBAの画面が起動するので、右の画面に以下をコピーして貼り付け。
1日のシートのA1に「1月1日」と入力すれば全シートに日付が入ります。ただし、31日に満たない月は、最後の方は次の月の日付になってしまいますが。

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim i As Integer
  If Target.Address <> "$A$1" Then Exit Sub
  For i = 2 To Worksheets.Count
    Worksheets(i).Range("A1").Value = ActiveSheet.Range("A1").Value + i - 1
  Next
End Sub

各シートのA1の書式は、シートの複数選択などを使って「1月1日」形式にしておいてください。

この回答への補足

教えていただいた通りにやってみましたが、 1/1 enterとすると
10月10日と表示されます。
シート2には10月14日と表示されそれ以降は15,16,17と繋がっています
マクロ、VBAを使うといろんなことが便利で簡単に出来そうなので、自分で勉強してみようと思います
ありがとうございました。

補足日時:2007/01/16 17:19
    • good
    • 0

Sheet1!A1=1月1日


Sheet2!A1=Sheet1!A1+1
Sheet3!A1=Sheet2!A1+1
のように前のシートの日付に1を足せばいいのでは?
    • good
    • 0

シフトを押しながら入力したいシートのタブをマウスで選べば、反転して選ばれたシートすべてに入力されますよ。



わかりにくければ、再度質問してください。

この回答への補足

選択したシートに同じ値を入力するのではなく
シート1のA1に1月1日(月)と入力するだけで
シート2   1月2日(火)
シート3   1月3日(水)



シート31  1月31日(水)
と残り30枚のシートに自動入力する方法を探しています。
分かり難い質問の仕方だったでしょうか、よろしくお願いします。

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

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