Excel VBA質問箱 IV

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

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


18054 / 76732 ←次へ | 前へ→

【64122】Re:メニューバーの非表示について
発言  n  - 10/1/20(水) 20:06 -

引用なし
パスワード
   ThisWorkbook に 変数記録用のシートを追加してください。
下記コードの例では、 "config" という名前のシートを追加したものとします。
普段は非表示(xlSheetVeryHidden)にしておいても構いません。
先に提示したコードを下記と入れ替えてください。

Private Sub barSet()
  Dim i As Long
  Dim c As Long
  Dim v(1 To 256)
  
  With Application
    .CommandBars("Worksheet Menu Bar").Enabled = False
    For i = 2 To .CommandBars.Count
      With .CommandBars(i)
        If .Visible Then
          .Visible = False
          c = c + 1
          v(c) = i
        End If
      End With
    Next
    .DisplayFormulaBar = False
    .DisplayStatusBar = False
  End With
  Me.Sheets("config").Rows(1).Value = v
End Sub
'---------------------------------------------------------------------
Private Sub barReset()
  Dim v, vi

  With Me.Sheets("config")
    v = .Range(.Cells(1), .Cells(256).End(xlToLeft).Offset(, 1)).Value
  End With
  ReDim Preserve v(1 To 1, 1 To UBound(v, 2) - 1)
  With Application
    .CommandBars("Worksheet Menu Bar").Enabled = True
    If Not IsEmpty(v(1, 1)) Then
      For Each vi In v
        .CommandBars(CLng(vi)).Visible = True
      Next
    End If
    .DisplayFormulaBar = True
    .DisplayStatusBar = True
  End With
End Sub

barSetする時にCommandBarsをLoopして表示されていれば非表示にします。
と同時に"config"シートの1行目に、表示CommandBarのIndexを記録します。
barReset時にその記録を読み込んで表示します。

こんな感じで表示状態に応じて対応すれば良いと思います。

0 hits

【63991】メニューバーの非表示について らいち 10/1/8(金) 18:13 質問
【63998】Re:メニューバーの非表示について n 10/1/9(土) 16:23 発言
【64032】Re:メニューバーの非表示について らいち 10/1/11(月) 9:25 質問
【64034】Re:メニューバーの非表示について らいち 10/1/11(月) 11:44 お礼
【64035】Re:メニューバーの非表示について n 10/1/11(月) 17:16 発言
【64040】Re:メニューバーの非表示について らいち 10/1/12(火) 10:28 質問
【64041】Re:メニューバーの非表示について n 10/1/12(火) 16:04 発言
【64042】Re:メニューバーの非表示について らいち 10/1/12(火) 18:06 お礼
【64119】Re:メニューバーの非表示について らいち 10/1/20(水) 17:02 質問
【64122】Re:メニューバーの非表示について n 10/1/20(水) 20:06 発言
【64129】Re:メニューバーの非表示について n 10/1/21(木) 1:31 発言
【64134】Re:メニューバーの非表示について らいち 10/1/21(木) 14:11 質問
【64137】Re:メニューバーの非表示について n 10/1/21(木) 19:33 発言
【64138】有難う御座いました。 らいち 10/1/21(木) 19:39 お礼

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