Excel VBA - 运行时错误' 1004:选择Range类的方法失败

时间:2015-07-21 01:26:08

标签: excel-vba runtime-error vba excel

我有以下Excel VBA代码,

NotificationBuilder#setPriority(Notification.PRIORITY_MIN);

我的问题是细胞" C4"通过vlookup从不同工作表中的下拉菜单中引用。每次我收到以下错误,

Private Sub Worksheet_Calculate()
    myMacro
End Sub





Public Sub myMacro()


    If Range("C4").Value = "Sales" Then

            Range("E4:AB5").Select
Selection.NumberFormat = "$#,##0.0"


    Else

             Range("E4:AB5").Select
Selection.NumberFormat = "#,##0"

    End If

End Sub

如果电池" C4"从它工作的同一张纸上引用,但我需要它从另一张纸上引用。

1 个答案:

答案 0 :(得分:0)

您的问题并不完全清楚,但是如果您想在另一张表格中查找C4(我使用Sheet2作为示例),然后格式化活动表格(不需要到Select)您可以尝试:

Public Sub myMacro()
Dim ws As Worksheet
Set ws = Sheets("Sheet2")

If ws.Range("C4").Value = "Sales" Then
    Range("E4:AB5").NumberFormat = "$#,##0.0"
Else
    Range("E4:AB5").NumberFormat = "#,##0"
End If

End Sub