Excel VBA質問箱 IV

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

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


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

【55918】ラベルに選択したSheet名表示 わかば 08/5/23(金) 14:29 質問[未読]
【55919】Re:ラベルに選択したSheet名表示 午後は眠い 08/5/23(金) 14:35 発言[未読]
【55922】Re:ラベルに選択したSheet名表示 わかば 08/5/23(金) 15:17 お礼[未読]
【55920】Re:ラベルに選択したSheet名表示 Abyss 08/5/23(金) 14:42 回答[未読]

【55918】ラベルに選択したSheet名表示
質問  わかば  - 08/5/23(金) 14:29 -

引用なし
パスワード
   初心者です。
ブックに12枚のSheetがあります。
ラベルに選択したSheet名を表示させたいのですが
下記のコードだと最初に表示したSheet名のまま、Sheetが切り替わってもSheet名が変わりません。
ネット等で調べましたが,わかりませんでした。
宜しくお願いします。

Option Explicit
Private Sub UserForm_Initialize()              
      Me.Label41 = Format(Date, "yyyy年 m月 d日(aaa)") '今日の日付
      Label53.Caption = ActiveSheet.Name         'Sheet名
End Sub

【55919】Re:ラベルに選択したSheet名表示
発言  午後は眠い  - 08/5/23(金) 14:35 -

引用なし
パスワード
   そりゃ
>UserForm_Initialize
じゃ変わらないでしょ〜。


こうしたらいいんじゃないの〜?

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
  UserForm1.Label53.Caption = Sh.Name
End Sub

【55920】Re:ラベルに選択したSheet名表示
回答  Abyss  - 08/5/23(金) 14:42 -

引用なし
パスワード
   こんにちは。

次のような感じで。

Private WithEvents book As Workbook

Private Sub UserForm_Initialize()
  Set book = ThisWorkbook
  Label41 = Format(Date, "yyyy年 m月 d日(aaa)")
  Label53.Caption = ActiveSheet.Name
End Sub

Private Sub book_SheetActivate(ByVal Sh As Object)
  Label53.Caption = Sh.Name
End Sub

【55922】Re:ラベルに選択したSheet名表示
お礼  わかば  - 08/5/23(金) 15:17 -

引用なし
パスワード
   午後は眠いさん Abyssさん有り難うございました。
無事に解決しました。
勉強になりました。

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