在vba

时间:2018-03-20 20:36:42

标签: vba

C列以一组文本格式的数字开头。 H列是空白的,我想根据来自专注于C列的If Elseif语句的结果,用文本填充每个相应的行。

我一直收到错误。 "应用程序定义或对象定义的错误"。所以我改变了那些单元格的格式。我也遇到过没有跨过整个专栏的问题。这就是我添加For循环的原因。

谢谢!

[C:C].Select
With Selection
    .NumberFormat = "General"
    .Value = .Value
End With

For i = 1 To Rows.Count
Next i

If Cells(i, 3).Value = "40018" Then
    Cells(i, 8).String = "<0.100 W"
ElseIf Cells(i,3).Value="41020" Then
    Cells(i, 8).String = "asfsdfsfd"
End If

1 个答案:

答案 0 :(得分:1)

错误是因为您的代码示例尝试为属性“.String”赋值(如在单元格(i,8) .String =“&lt; 0.100 W”中)不存在。此外,您的 If ElseIf 语句应该在For循环内部才能正常工作。请尝试使用以下代码。

[C:C].Select
With Selection
    .NumberFormat = "General"
    .Value = .Value
End With

For i = 1 To Rows.Count
    If Cells(i, 3).Value = "40018" Then
        Cells(i, 8).Value = "<0.100 W"
    ElseIf Cells(i, 3).Value = "41020" Then
        Cells(i, 8).Value = "asfsdfsfd"
    End If
Next I