
(1)エクセルで7月31日分のシートをつくり、今年のカレンダーどおりの日付・曜日を(各シートのA1セルに、いちいち入力するのではなく)一括で各シートのA1セルに表示できる方法があれば、教えて下さい。
(2)エクセルで昨年7月の平日の数だけシートがあるファイルがあります。各シートのA1セルには、「平成19年7月○日(○曜日)」と入力されています。
このファイルを、今年の7月の平日カレンダーに一括置換するには、どうすればいいでしょうか?
昨年と今年は平日の日付はもちろん、同じ日でも曜日が違いますので、各シートを開き、いちいち日付・曜日を直さなければいけないのでしょうか。教えて下さい。宜しくお願いします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
(1)31枚のシートに1日づつずらした日付を入れる方法
VBAで無いと出来ないでしょう。下記のように簡単。
シートの名前がシート1,シート2・・などで、そのシート名の1や2・・に頼る方法もありますが、変えられるとだめになるので、やめておいたほうがよいでしょう。
シートが別になると連続データの作成や関数式の複写が働かなくなるので難しいのです。
Sub test02()
For i = 1 To 4
Sheets(i).Range("a1") = #6/30/2008# + i
Sheets(i).Range("a1").NumberFormat = "yyyy/mm/dd(aaa)"
Next i
End Sub
ただし日付を入れるシートは31枚がシート名のタブ位置的に固まっていること、他のシートが混じってないこと。が条件です。
私はシートが4枚しかないので、4でテストしたが
For i = 1 To 31
で、シートを31枚用意してやってください。
(2)今年の日付で置き換え
ただし去年のシートは平日枚数分がシート名のタブ位置的に固まっていること、他のデータ性格のシートが混じってないこと。という前提で
(1)上記のプログラムの中で、WEEKDAY関数で土日を判別し
(海の日が規則を乱すが特別に判別して飛ばす)土日は飛ばして次のシート(.Nextシート)に順順に日付をセットしていけば簡単。
Sub test03()
Sheets(1).Select
For i = #7/1/2008# To #7/4/2008#
If Weekday(i) = 1 Or Weekday(i) = 7 Or i = #7/21/2008# Then
Else
MsgBox Format(i, "yyyy/mm/dd(aaa)")
ActiveSheet.Range("A1") = Format(i, "yyyy/mm/dd(aaa)")
ActiveSheet.Next.Activate
End If
Next i
End Sub
ただし今年平日数より、1シートだけ最後の次に余分にシートを作っておいて実行してください。
祝日・会社休業日等を年間で一般化するのはコードが複雑になる。
No.2
- 回答日時:
#1のレスは、
(2)
に対するものです。
(1)
に関しては、VBAで行行うことになると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
みんなに挑戦してほしい「色彩検定」
これまで多くの方々が受検したが「色彩検定」。その目的や活用法は人それぞれ。今回は、色彩検定に影響を受けた男女3名にインタビュー。
-
エクセル シート毎 連続で曜日を入れる
Excel(エクセル)
-
EXCELで最初の曜日を入力したら他のセルで自動で表示したい
その他(Microsoft Office)
-
エクセルの複数シートに、順次”年、月、日、曜日”を入れたいのですが、入
その他(暮らし・生活・行事)
-
4
EXCELで1ヶ月分の連続した日付をシート名+セルに表示させたい
Excel(エクセル)
-
5
エクセルのシート間で連続した日付データを作りたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
エクセルのシート連番の振り直し
-
5
特定のシートのみ再計算させな...
-
6
EXCELで複数のシートを一度に「...
-
7
エクセルでブック内の倍率がバ...
-
8
ハイパーリンクでジャンプした...
-
9
EXCELの図形(テキストボックス)...
-
10
エクセルの複数シートでのリン...
-
11
エクセルで複数のシートに画像...
-
12
Excelに画像を張り付けると文字...
-
13
Wordで差し込み印刷時に表示す...
-
14
Excelでマクロ設定したが反映さ...
-
15
エクセルのシート名の変更がで...
-
16
特定の複数のシートに同じ処理...
-
17
エクセルでリンク貼り付けした...
-
18
エクセル 非表示のシートをハ...
-
19
Excelで「上下に並べて表示」の...
-
20
[エクセル]行の挿入、シート間...
おすすめ情報
公式facebook
公式twitter