-1

假设我在 Excel 中有下表: 在此处输入图像描述

我希望能够从我创建的用户表单中选择一个任务和一个日期,这样匹配的单元格就会被着色。我在任务列上使用 For 循环来查找并转到所需的任务,但我不知道如何遍历每一行并从上面为每个单元格查找匹配日期。

任何帮助将不胜感激,谢谢。

4

1 回答 1

1

下面Sub将为您做到这一点(基本上实现@JosieP的评论):

Sub ColorCell(strTask As String, datDate As Date)
    Dim lRow As Long, lCol As Long

    On Error GoTo errhandler

    With WorksheetFunction
        lRow = .Match(strTask, Range("C4:C10"), 0)
        lCol = .Match(CLng(datDate), Range("D2:N2"), 0)
    End With

    Sheet1.Range("C2").Offset(1 + lRow, lCol).Interior.Color = vbYellow

    Exit Sub
errhandler:
    MsgBox "Date or Task out of range. Try again", vbOKOnly
End Sub
于 2013-08-20T11:11:08.800 回答