2

我是 VBA 新手。我有一个我认为很简单的问题,但我愚蠢地失败了。我必须生成MsgBox警告用户在空白单元格中输入数据。

我还必须通过在前一栏中指明参数来提及空白单元格的目的地。实际上我的excel列表很大,但是,我上传的图片证明了我的需求。

在 AI 列中输入了公司的名称 - 法拉利、奥迪和兰博基尼,而在 BI 列中提到了他们各自的汽车。在 C、D、EI 列中提到了他们几个月的销售额。如果用户没有输入一个条目的销售数字,我需要在他检查数据有效性时警告他。

此图片的信息应为: 请输入兰博基尼 Aventador 和兰博基尼 Veneno 的销量。

在我的图像中,黄色突出显示表示未输入数据。在我的文件中,我只有一列(只有一个月)用于销售,但有数千行(用于汽车)。

快照图像

4

1 回答 1

3

假设您的数据如下所示

在此处输入图像描述

试试这个

Private Sub CommandButton1_Click()
    Dim ws As Worksheet
    Dim lrow As Long, i As Long

    Set ws = ThisWorkbook.Sheets("Sheet3")

    With ws
        lrow = .Range("A" & .Rows.Count).End(xlUp).Row

        For i = 4 To lrow
            If Application.WorksheetFunction.CountA(.Range("C" & i & ":E" & i)) <> 3 Then
                MsgBox "Please Enter the number of units of " & .Range("B" & i).Value & " Sold"
                Exit Sub
            End If
        Next i
    End With

    MsgBox "Data Validated"
End Sub

这是你运行代码时得到的

在此处输入图像描述

当一切都被填满时

在此处输入图像描述

于 2013-04-18T14:31:01.830 回答