【问题标题】:Excel vba - Method 'Range' of object '_Global' failed. errorExcel vba - 对象“_Global”的方法“范围”失败。错误
【发布时间】:2015-12-10 06:59:45
【问题描述】:

我是 excel VBA 的新手,在这个项目中,如果单元格 B4 不为空且单元格 C4 为空,则应突出显示 C4。同样,代码应该循环到 B16 单元格。 “AMA79”是工作表名称。我得到对象“_Global”的方法“范围”失败。使用此代码时出错。你能告诉我应该做些什么来纠正这个问题。

Dim i As Integer
Dim rng As Range
Set rng = Range("B4:B16")

For i = 4 To 16
With ThisWorkbook.Worksheets("AMA79")
If Range(B, i).Value <> "" And Range(D, i).Value = "" Then
Range(c, i).Interior.Color = vbYellow
End If
End With
Next i

【问题讨论】:

    标签: vba excel vbscript vb6


    【解决方案1】:

    试试这个: 编辑:

       Sub test()
    
    Dim i As Integer
    Dim wb As Workbook
    Dim ws As Worksheet
    
    Set wb = ThisWorkbook
    Set ws = wb.Sheets("AMA79")
    
    For i = 4 To 16
    
    If ws.Range("B" & i).Value <> "" And ws.Range("D" & i).Value = "" Then
    
    ws.Range("C" & i).Interior.Color = vbYellow
    ws.Range("B29").Value = "Please validate the cells highlighted"
    
    End If
    
    Next i
    
    End Sub
    

    【讨论】:

    • 如果任何列被突出显示,您能否告诉我是否可以使用此Range("$B$29").Value = "My desired message" 在单元格上显示消息?
    • 我并没有真正明白。如果 C 列中的一个单元格被高亮显示,您想在此 Range("B29") 中显示一条消息吗?
    • 正确!就像如果任何单元格用上面的代码突出显示,那么 B29 应该显示消息“请验证突出显示的单元格。”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多