Worksheet_Change事件在旧版Excel中不起作用

时间:2015-04-10 15:16:59

标签: excel vba excel-vba

我制作了一个宏来更新图表轴上的值。

它分别分配给每个工作表而不是整个工作簿,所以我非常确定这个修复: ' Excel Worksheet_Change Event not working' 不适用。

它在Excel 2013上运行正常,但当我将它发送给其他用户使用Excel 2003& 2007它没有用。

我尝试添加application.event启用/禁用,以防止停止它 - 没有工作。

还尝试寻找一个图书馆勾选框但没有跳出来。

这里的代码是:

    Private Sub Worksheet_Change(ByVal Target As Range)

'Format graph axis depending on what the dropdown value is

Dim DropBox As Range
Dim PaxRange As Range
Dim RevRange As Range
Dim AveRange As Range
Dim YoyRange As Range

Set DropBox = Range("FC96")
Set PaxRange = Range("A97")
Set RevRange = Range("A98")
Set AveRange = Range("A99")
Set YoyRange = Range("A100")

     If Not Intersect(Target, DropBox) Is Nothing Then
            If DropBox.Value = PaxRange.Value Then
                'If it's passengers
                ActiveSheet.ChartObjects("Chart 1").Activate
                ActiveChart.Axes(xlValue).Select
                Selection.TickLabels.NumberFormat = "#,##0"
            End If

            If DropBox.Value = RevRange.Value Then
                'If it's revenue
                ActiveSheet.ChartObjects("Chart 1").Activate
                ActiveChart.Axes(xlValue).Select
                Selection.TickLabels.NumberFormat = "£#,##0"
            End If

            If DropBox.Value = AveRange.Value Then
                'If it's average
                ActiveSheet.ChartObjects("Chart 1").Activate
                ActiveChart.Axes(xlValue).Select
                Selection.TickLabels.NumberFormat = "£#,##0.00"
            End If

            If DropBox.Value = YoyRange.Value Then
                'If it's year-on-year
                ActiveSheet.ChartObjects("Chart 1").Activate
                ActiveChart.Axes(xlValue).Select
                Selection.TickLabels.NumberFormat = "#,##0%"
            End If
            DropBox.Select
    End If
End Sub

VBA相当新鲜,无法找到任何有同样问题的人。 真的很感激任何帮助。

感谢。

1 个答案:

答案 0 :(得分:0)

我最终解决了这个问题,所以为了vba和我一样糟糕的其他人的利益:

问题在于我发送给它的人有宏安全设置,不允许宏运行。

解决方案就像要求他们更改您喜欢的 this (Microsoft Office支持)的宏安全设置一样简单。

感谢。