Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 当选择范围AR9:AR99时,如何更新此以执行不同的操作?_Excel_Vba - Fatal编程技术网

Excel 当选择范围AR9:AR99时,如何更新此以执行不同的操作?

Excel 当选择范围AR9:AR99时,如何更新此以执行不同的操作?,excel,vba,Excel,Vba,如果目标是AR9:AR99我想执行另一个操作。我可以将其添加为else if语句吗?我尝试了几个没有如预期效果的选项 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.ScreenUpdating = False If Intersect(Target, Range("G9:G99, W9:W99, AI9:AI99,AR9:AR99")) Is Nothing The

如果目标是
AR9:AR99
我想执行另一个操作。我可以将其添加为else if语句吗?我尝试了几个没有如预期效果的选项

 Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    Application.ScreenUpdating = False

    If Intersect(Target, Range("G9:G99, W9:W99, AI9:AI99,AR9:AR99")) Is Nothing 
    Then Exit Sub
    ',V6:V25,AG6:AG25 milestone task to top 20 projects

    Dim pt As PivotTable
    Dim Field As PivotField
    Dim NewCat As String

    Set pt = Worksheets("mPIVOTS").PivotTables("PivotTable3")
    Set Field = pt.PivotFields("Project")

    NewCat = ActiveCell

    With pt
    Field.ClearAllFilters
    Field.CurrentPage = NewCat
    pt.RefreshTable
    End With

    Worksheets("Project - Milestone Dash").Activate

    Application.ScreenUpdating = True
    End Sub
如下图所示。(我还通过删除不必要的with block来清理代码)

如下图所示。(我还通过删除不必要的with block来清理代码)


选择范围AR9:AR99或选择范围AR9:AR99内的任何单元格时,是否要执行某些操作?选择范围AR9:AR99或选择范围AR9:AR99内的任何单元格时,是否要执行某些操作?
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    Application.ScreenUpdating = False

    If Not Intersect(Target, Range("G9:G99, W9:W99, AI9:AI99,AR9:AR99")) Is Nothing Then

        ',V6:V25,AG6:AG25 milestone task to top 20 projects

        Dim pt As PivotTable
        Dim Field As PivotField
        Dim NewCat As String

        Set pt = Worksheets("mPIVOTS").PivotTables("PivotTable3")
        Set Field = pt.PivotFields("Project")

        NewCat = ActiveCell

        Field.ClearAllFilters
        Field.CurrentPage = NewCat
        pt.RefreshTable

        Worksheets("Project - Milestone Dash").Activate

    ElseIf Not Intersect(Target, Range("AR9:AR99")) Is Nothing Then

        'do different things

    End If

End Sub