No.1ベストアンサー
- 回答日時:
自動作成って言う時点でマクロ(VBA)が必要です。
シートを作って名前を変えるだけならこんな感じです。
祭日は対応してません。
Sub Test()
Dim sd, ed, cnt
sd = Application.InputBox("yyyy/m/d", "日付", Type:=2)
If Not IsDate(sd) Then Exit Sub
sd = DateValue(sd)
ed = DateSerial(Year(sd), Month(sd) + 1, 0)
On Error Resume Next
For cnt = sd To ed
If Weekday(cnt, vbMonday) < 6 Then
Worksheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Format(cnt, "mmdd")
End If
Next cnt
End Sub
この回答へのお礼
お礼日時:2006/06/21 06:08
ご回答ありがとうございました
書いていただくと何となく意味はわかるのですが、0からつくるのは無理そうです。
いただいたプログラムを入れてみて勉強させていただきます。
No.2
- 回答日時:
VBAの知識なしでは、自動でではできません。
関数でシート名を変えられません。シート名は、セルの「値」では無いですから。この辺をよく認識してください。何か気の効いたことをやろうとすると、VBAが必要になります。エクセルに限らず何でも教えてもらったことを理解するにも勉強が必要な場合が多い。
Sub tetst01()
ym = InputBox("yyyy/mm")
sn = Sheets.Count - 1
d = DateValue(ym & "/1")
dl = DateSerial(Year(d), Month(d) + 1, 1) - 1
For i = d To dl
If Weekday(i) > 1 And Weekday(i) < 7 Then
sn = sn + 1
Worksheets.Add after:=Worksheets(sn)
Sheets(sn + 1).Name = Format(i, "mmdd")
MsgBox i & " " & Weekday(i)
End If
Next i
End Sub
yyyy/mm年月は2006/6のように答えてください。
この回答へのお礼
お礼日時:2006/06/22 18:12
大変参考になりました。
必要は発明の母ですね。
マクロを自由に操れたらおもしろいだろうなと感銘を受けました。
これから少しづつ学んでいこうと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの複数シートの保護を...
-
Excelで金銭出納帳。繰越残高を...
-
excelでシート毎の最終更新日を...
-
シートを追加・名前を次月に変...
-
Excelのシートを、まとめて表示...
-
エクセル 計算式も入っていない...
-
特定のシートの削除を禁止した...
-
エクセルで前のシートを連続参...
-
エクセルでファイルを開いたと...
-
Accessのスプレッドシートエク...
-
Excel、同じフォルダ内のExcel...
-
シートの保護のあとセルの列、...
-
エクセルのシート名をリスト化...
-
別シート参照のセルをシート毎...
-
前の(左隣の)シートを連続参...
-
エクセルVBAでパスの¥マークに...
-
エクセルで毎回1枚目のシートを...
-
VBAでシートコピー後、シート名...
-
EXCELで1ヶ月分の連続した日付...
-
Excelで同じシートのコピーを一...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの複数シートの保護を...
-
Excelで金銭出納帳。繰越残高を...
-
エクセルVBAでパスの¥マークに...
-
前の(左隣の)シートを連続参...
-
EXCEL:同じセルへどんどん足し...
-
別シート参照のセルをシート毎...
-
エクセルでファイルを開いたと...
-
Excelのシートを、まとめて表示...
-
エクセルのシート名をリスト化...
-
VBAでシートコピー後、シート名...
-
特定のシートの削除を禁止した...
-
エクセルで前シートを参照して...
-
シートの保護のあとセルの列、...
-
エクセル 計算式も入っていない...
-
エクセルで複数設定したハイパーリンク先...
-
EXCELで1ヶ月分の連続した日付...
-
Excel、同じフォルダ内のExcel...
-
Accessのスプレッドシートエク...
-
EXCELで同一フォーマットのシー...
-
excelでシート毎の最終更新日を...
おすすめ情報