【问题标题】:VBA expand/collapse rows with same macro buttonVBA使用相同的宏按钮展开/折叠行
【发布时间】:2017-07-25 18:12:22
【问题描述】:

关于如何运行一个简单的宏按钮,我们有一个小问题。此按钮有两个用途:展开一行和折叠一行。

1在按下按钮时启动此 VBA 命令:

Sub Macro7()

Rows(7).ShowDetail = True

End Sub

此命令扩展第 7 行。

2 再次按下按钮(同时展开行),将启动此 VBA:

Sub Macro7()

Rows(7).ShowDetail = False

End Sub

这会折叠行。

有没有办法将一个按钮链接到两个宏?

提前致谢!!!

M

【问题讨论】:

    标签: excel vba


    【解决方案1】:
    Sub Macro7()  
        With Rows(7)
            .ShowDetail = Not .ShowDetail
        End With
    End Sub 
    

    【讨论】:

      【解决方案2】:

      没必要。只需调整宏以检查行的当前状态(折叠或展开)并采取相应措施:

      Sub ExpandOrCollapse()
      
      Rows(7).ShowDetail=IIF(Rows(7).ShowDetail,False,true)
      
      End Sub
      

      【讨论】:

      【解决方案3】:

      我尝试了上述答案,但对我不起作用。以下是有效的代码:

      Sub rowExpanded()
      
      Rows("7:7").Select
      Selection.EntireRow.Hidden = IIf(Selection.EntireRow.Hidden, False, True)
      
      End Sub
      

      【讨论】:

        【解决方案4】:

        试试这个

        Dim rowExpanded As Boolean
        rowExpanded = Rows(7).ShowDetail
        
        If rowExpanded = True Then
            Rows(7).ShowDetail = False
        Else
            Rows(7).ShowDetail = True
        End If
        

        【讨论】:

          【解决方案5】:

          尝试使用命令按钮(ActiveX 控件)。使用按钮标题来识别切换状态。

          Private Sub CommandButton1_Click()
          
              If CommandButton1.Caption = "-" Then
                  ActiveSheet.Outline.ShowLevels Rowlevels:=1, ColumnLevels:=1
                  JobDescriptionToggleButton.Caption = "+"
              Else
                  ActiveSheet.Outline.ShowLevels Rowlevels:=8, ColumnLevels:=8
                  JobDescriptionToggleButton.Caption = "-"
              End If
          
          End Sub
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2018-01-06
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-01-16
            • 2016-11-02
            • 2019-12-24
            相关资源
            最近更新 更多