Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4672 / 13644 ツリー ←次へ | 前へ→

【55296】ボタンでシートを呼び出す(業務日誌) Regina 08/4/26(土) 0:13 質問[未読]
【55297】Re:ボタンでシートを呼び出す(業務日誌) かみちゃん 08/4/26(土) 0:20 発言[未読]
【55310】Re:ボタンでシートを呼び出す(業務日誌) Regina 08/4/26(土) 23:28 お礼[未読]

【55296】ボタンでシートを呼び出す(業務日誌)
質問  Regina  - 08/4/26(土) 0:13 -

引用なし
パスワード
   いつもここでお世話になっております。
今、業務日誌の日報を作成しています。基準のブックを作成して、毎月ごとに変更しながら使っていこうと思っています。
ブックの構成は、「基準カレンダー」のシートにカレンダーの枠だけ作成しており、コマンドボタンを31個作成して(31日分)コマンドボタンをクリックするとその日の業務日誌のシートが表示されるようにしたいと思っています。同じブックの中には31個の業務日誌のシートを用意しています。Sheet1〜Sheet1(31)までです。コマンドボタンのマクロは、例えば"1日"のボタンをクリックすると以下のコードを割り当てています。
 Sub 1日_Click()
  Worksheets("Sheet1").Show
 End Sub
このコードで表示しようと思って実行しますがエラーになります。今までここで教えていただいて、ユーザーフォームの呼び出しのようなコードでいいのかなと思ってましたが、シートの呼び出しとなるとコードが異なるのでしょうか?


本当は、毎月設定しなくても、カレンダーの年号や月を選択して、その月のカレンダーを表示させ、そのカレンダーのそれぞれの日付のセルをクリックすると、その日の業務日誌のシートが表示され、必要な値を入力していけたら一番よいのですが、私の知識では難しくて実行できません。

取り敢えず、ブックの中のカレンダーにボタンを31日分作成して、ボタンクリックでその日のシートを表示させようとしています。なので、5月分の業務日誌のブックは、基準となるブックをコピーして、5月のカレンダーのように、カレンダーの枠内に31日分のボタンを配置しようとまでしか考え切れません。6月分はまた、基準のブックをコピーして、6月のカレンダーのようにボタンを配置換えしないといけなくて、毎月毎月設定しなくてはなりません。

今は、効率の悪いものしか考え切れていません。ご指摘、ご指導お願いします。

【55297】Re:ボタンでシートを呼び出す(業務日誌)
発言  かみちゃん  - 08/4/26(土) 0:20 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> Sheet1〜Sheet1(31)までです。コマンドボタンのマクロは、例えば"1日"のボタンをクリックすると以下のコードを割り当てています。
> Sub 1日_Click()
>  Worksheets("Sheet1").Show
> End Sub
>このコードで表示しようと思って実行しますがエラーになります。

ボタンをクリックするという考えの前に、
特定のシートをアクティブにするには、一般操作でどうするのかを考えてみてください。
それがわかれば、その操作を「マクロの記録」で記録すれば、Showではないことに気づくと思います。

なお、シート名は、本当はどうなっているのですか?
本当に、1日は、Sheet1、2日は、Sheet1 (2) 、3日は、Sheet1 (3) なのでしょうか?

【55310】Re:ボタンでシートを呼び出す(業務日誌)
お礼  Regina  - 08/4/26(土) 23:28 -

引用なし
パスワード
   ▼かみちゃん さん:
お返事ありがとうございます。
Show でなく Activate でした。ご指摘ありがとうございました。

4672 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free