我收到错误,因为我的值是文本,它正在寻找数值如何解决这个问题?

时间:2018-04-13 16:19:40

标签: excel-vba vba excel

我不是VBA程序员,我需要帮助。 在我的电子表格中,我的位置(ComboBox1)是文本,我无法将其更改为数字。如何修复它以便它将使用文本。我想我需要使用IsText函数,但我无法弄清楚如何。

我的代码粘贴在下面。 GetData()之后的第一行就是它停止的地方。

Dim Loc As Integer, i As Integer, j As Integer, flag As Boolean

Sub GetData()

If IsNumeric(UserForm1.ComboBox1.Value) Then
    flag = False
    i = 0
    id = UserForm1.ComboBox1.Value

    Do While Cells(i + 1, 1).Value <> ""

        If Cells(i + 1, 1).Value = id Then
            flag = True
            For j = 2 To 3
                UserForm1.Controls("TextBox" & j).Value = Cells(i + 1, j).Value
            Next j
        End If

        i = i + 1

    Loop

    If flag = False Then
        For j = 2 To 3
            UserForm1.Controls("TextBox" & j).Value = ""
        Next j
    End If

Else
    ClearForm
End If

End Sub
Sub ClearForm()

For j = 1 To 3
    UserForm1.Controls("TextBox" & j).Value = ""
Next j

End Sub
Sub EditAdd()

Dim emptyRow As Long

If UserForm1.ComboBox1.Value <> "" Then
    flag = False
    i = 0
    id = UserForm1.ComboBox1.Value
    emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1

    Do While Cells(i + 1, 1).Value <> ""

        If Cells(i + 1, 1).Value = id Then
            flag = True
            For j = 2 To 3
                Cells(i + 1, j).Value = UserForm1.Controls("TextBox" & j).Value
            Next j
        End If

        i = i + 1

    Loop

    If flag = False Then
        For j = 1 To 3
            Cells(emptyRow, j).Value = UserForm1.Controls("TextBox" & j).Value
        Next j
    End If

End If

End Sub

0 个答案:

没有答案