現在、「教えてGOO」でご指導をいただいて、ある簡易システム(エクセル)のVBA稼動中は「しばらくお待ちください」という表示シートを画面に固定しています。
そこに、月ごとの業務目標や忘れてはならないメッセージや季節のイラスト等を出したいので、次のようにしたいのです。
【やりたいこと】月が変わるとVBAで12枚用意したシート(つまり”ひとつき”に一枚のシート)を自動選択するようにしたいのです。(例)1月になると、「1月」、2月になると「2月」・・・というシートという風に・・・。
ご指導、よろしくお願いします。
No.4
- 回答日時:
標準モジュールの中に下記のコマンドを記入すれば、
エクセルファイル起動と同時に○○月のシートが
オープンされますよ。
ただし、シート名に半角で”12月”にのように
記入してください。(実験済み)
ただし、1月などは”01月”などと記入しなくては
いけないかも知れません。
(分からなくてごめんなさい)
Sub auto_open()
Dim TukiMei As Integer
TukiMei = Month(Date)
Worksheets(TukiMei & "月").Select
End Sub
この回答への補足
ご回答ありがとうございます。
起動時のシート表示でなく、マクロ稼動時の指定シート表示について、たとえば、12月25日(クリスマス)を過ぎれば、”年末年始に向けての業務注意事項等”を含めた業務メッセージ(例:デイルームの正月飾りつけの準備はできていますか?)や遊び心もいれたイラストなどが入ったシート表示をイメージしています。#2さんのご回答が理想に近く、日付をからめたいのです。よろしくご指導お願いいたします。
No.3
- 回答日時:
こんにちは。
yastaroさん。 Wendy02です。>月ごとの業務目標や忘れてはならないメッセージや季節のイラスト等を出したいので
それらは、Excelブックに、それらのデータを抱えるのではなく、別に作っておいて、UserFormで出せばよいと思います。
>(つまり”ひとつき”に一枚のシート)を自動選択するようにしたいのです。(例)1月になると、「1月」、2月になると「2月」・・・というシートという風に・・・。
本当に、月で換わってよいのなら、#1さんのコードは似ていますが、こういうことでしょうね。
Private Sub Workbook_Open()
Dim myMonth As Integer
myMonth = Month(Date)
Worksheets(CStr(myMonth) & "月").Select
End Sub
業務でも、それは、経理関係ばありませんね。経理関係なら、ちょっと、そういうことはありませんから。
この回答への補足
Wendy02さん、こんにちは。いつもありがとうございます。
申し訳ありません。私のレベルではご指導いただいた”UserForm”の使い方さえ理解できませんでした。また、いただいたコードは「ブックを開いた時」というものでしょうか?マクロ稼動中にというときの画面表示に運用できませんでした。いくら私が素人にしてもこうもいつもいつもWendy02さんのご回答に追いついていけないと少し落ち込みます^^;あとおっしゃるように経理システムではありません。鋭いですね^^
No.2
- 回答日時:
こんな程度で良いのかな?
Sub AutoSelct()
Dim sh As String
Select Case Month(Date)
Case 1: sh = "1月"
Case 2: sh = "2月"
Case 3: sh = "3月"
Case 4: sh = "4月"
Case 5: sh = "5月"
Case 6: sh = "6月"
Case 7: sh = "7月"
Case 8: sh = "8月"
Case 9: sh = "9月"
Case 10: sh = "10月"
Case 11: sh = "11月"
Case 12: sh = "12月"
End Select
Sheets(sh).Activate
End Sub
この回答への補足
申し訳ありません。あとで気がついたのですが、行事がらみで、たとえばクリスマスを過ぎたら別の業務メッセージに変えたいということがあります。つまり、月単位だけでなく、日付も絡めたいのです。たとえば12/25を過ぎたら「12月(2)」のシートへ、などと組み合わせるには?というコードについてもご指導いただけますでしょうか?よろしくお願いいたします。
補足日時:2005/12/08 18:14hana-hana3さん、ありがとうございます。動作を確認できました。私のイメージ通りです^^。以前からご指導いただいていますこともあわせて、感謝いたします。ありがとうございました。
No.1
- 回答日時:
はじめまして。
VBAのThisWorkBookのところに下記を記入すれば
OKです。
Private Sub Workbook_Open()
Dim lMonth As Long
lMonth = Month(Date)
Excel.Sheets(lMonth).Select
End Sub
はじめまして。scheimpflugさん。まずは、ご回答いただきましたことを心からありがとうございます。
ただ、いただいたコードの運用ができませんでした。おそらく私が初心者であるための理解不足のせいかと思います。お許しください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) vba シートの並び替え 1 2023/04/19 13:44
- Visual Basic(VBA) 2つの条件に合うセルにデータを転記したい 4 2022/12/02 11:05
- Excel(エクセル) エクセルVBAでチェックボックスにチェックを入れる 1 2022/09/14 00:52
- Excel(エクセル) エクセルのフィルターを複数シートに連動させたいです。 エクセルファイルに15シートあります。 そのう 2 2022/05/01 21:47
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- その他(Microsoft Office) エクセルの休日について教えてください。 1 2023/01/06 15:45
- Excel(エクセル) エクセル関数について 2 2022/04/13 18:25
- Visual Basic(VBA) 翌日にお休み予定の従業員がいる場合にアラートを出したい 1 2023/07/11 11:18
- Excel(エクセル) vba アクティブシートのA1セルの値を基準に複数のシートコピー&シート名を 6 2023/04/12 18:36
- Excel(エクセル) vba 同じブック内での転記について 4 2023/01/15 14:42
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
VBA 入力月で該当シートを選択する方法
Visual Basic(VBA)
-
エクセルで、月によって参照するシートを自動的に変える関数
Excel(エクセル)
-
月が変わったら自動でシートが複製される方法を教えてください。
Visual Basic(VBA)
-
-
4
シート名が変わる場合のVBAの設定の仕方
Excel(エクセル)
-
5
VBA シート名を先月の名前にしたい
Excel(エクセル)
-
6
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
7
VBAで先月、先々月を求める方法
Visual Basic(VBA)
-
8
【Excel VBA】ネットワーク上の共有フォルダにあるExcelを開く
Excel(エクセル)
-
9
エクセルVBA:毎月名前が変わるエクセルファイルを毎月異なるフォルダから開く
その他(コンピューター・テクノロジー)
-
10
参照するシートを月ごとに変更したい
Excel(エクセル)
-
11
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
12
別のシートから値を取得するとき
Visual Basic(VBA)
-
13
Excelマクロ シート名を変数で選択
Excel(エクセル)
-
14
Excelでマクロ設定したが反映されない(初心者です)
Excel(エクセル)
-
15
シートを追加・名前を次月に変更、前月内容を貼り付け
Excel(エクセル)
-
16
マクロの「Rangeメソッドは失敗しました’Globalオブジェクト」エラーの解決方法について
Excel(エクセル)
-
17
実行時エラー 438になった時の対処法を教えて下さい。
Visual Basic(VBA)
-
18
Excel vbaで別ブックのコマンドボタンをクリック
Visual Basic(VBA)
-
19
エクセルエラー13型が一致しませんの直し方教えて下さい。
その他(Microsoft Office)
-
20
vba初心者です。 質問です。 毎回ファイル名が変わるファイルを開きたいです。 open filen
その他(IT・Webサービス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelの差込印刷で可視セルだけ...
-
エクセルVBA 別シートの複数の...
-
シャープのアクオス sh-m25 を...
-
歯抜けの時間を埋めて行の挿入
-
VBA:同じ文字列データの比...
-
エクセルVBAで SendKeys "{TAB}"
-
VBAの処理が途中で止まる
-
エクセルVBAでの日付順のデ...
-
Excelマクロ データが上書きさ...
-
Excel VBA インデックスの境...
-
VBAで複数シート選択
-
excel:色付き文字の抽出と変換法
-
Excel VBA :2回目以降実行で貼...
-
Excel で行を指定回数だけコピ...
-
複数条件に一致したデータを月...
-
エコウォッシュシステムの値段...
-
EXCELマクロで全シート対...
-
ノートパソコン 2in1について i...
-
VBA 貼付先範囲(行)がいっぱ...
-
情報系の授業の課題なのですが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA 別シートの複数の...
-
Excel で行を指定回数だけコピ...
-
Excel VBA インデックスの境...
-
excelの差込印刷で可視セルだけ...
-
VBA:同じ文字列データの比...
-
VBA別シートの最終行の下行へ貼...
-
エクセル:VBAで月変わりで、自...
-
エクセルVBAで 2種のリストを...
-
歯抜けの時間を埋めて行の挿入
-
エクセルVBAで SendKeys "{TAB}"
-
VBAで条件が一致する行のデータ...
-
EXCELマクロで全シート対...
-
VBAの指示の内容 昨日こちらで...
-
Excel VBAでシート内全体に非表...
-
VBAで複数シート選択
-
Excelマクロ データが上書きさ...
-
Excel VBA 時刻でのD...
-
VBA 貼付先範囲(行)がいっぱ...
-
エクセルVBAでの日付順のデ...
-
【WORD差し込み印刷】複数レコ...
おすすめ情報