2017-05-07 6 views
0

Excelで非常に新しいプログラミングマクロです。静的変数を初期化し、一度初期化してから値を保持する方法がわかりません異なる関数呼び出し時に変更してください。静的変数を定義し、それを初期化してExcel VBAで使用する

"行を非表示にする"という見出しが付いたセルがあります。そのセルをクリックすると、別の行の表示を切り替えたいと思っています。

私はこのコードを試しましたが、最初は変数Hidden to Falseを初期化するように、行を隠すだけで表示されません。

Option Explicit 

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
    Static Hidden As Boolean 
    Hidden = False 

    If Selection.Count = 1 Then 
    If Not Intersect(Target, Range("F8")) Is Nothing Then 
     If Hidden = False Then 
      Rows("1:1").EntireRow.Hidden = True 

      MsgBox "Aaaau!" 

      Hidden = True 
     Else 
      Rows("1:1").EntireRow.Hidden = False 

      MsgBox "Hola!" 

      Hidden = False 
     End If 
    End If 
    End If 
End Sub 

答えて

0

マクロの先頭でhiddenをfalseに設定すると、テスト命令を入力するときにhiddenが常にfalseになります。

は魅力のように働いたこの

Option Explicit 

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
    Static Hidden As Boolean 

    If Selection.Count = 1 Then 
    If Not Intersect(Target, Range("F8")) Is Nothing Then 
     If Hidden = False Then 
      Rows("1:1").EntireRow.Hidden = True 

      MsgBox "Aaaau!" 

      Hidden = True 
     Else 
      Rows("1:1").EntireRow.Hidden = False 

      MsgBox "Hola!" 

      Hidden = False 
     End If 
    End If 
    End If 
End Sub 
+0

を試してみてください。ありがとうございました! – Cerilet

関連する問題