vba - Excel VBA 类型不匹配引用 Cell.Value

标签 vba excel

嗨,抱歉,这几乎肯定会是一个“doh”时刻,但我已经很久没有编码了,我有点生疏了。

我有一个单元格值,当我尝试将其视为字符串时,我不断收到类型不匹配,但 CStr 和对 IsNull 等的测试似乎没有帮助。感谢一些建议。

Set ClientTable = SourceBook.Sheets("Source Data").Range("extdata")
For Each rng1 In ClientTable.Columns(1).Cells
    'if not first row (header row) and the customer name is matching the selected customer
    If (i <> 0) And (rng1.Value = SourceBook.Sheets("Source Data").Range("C1")) Then
        If Not IsNull(ClientTable.Columns(6).Cells.Offset(i, 0).Value) Then
            MsgBox ClientTable.Columns(6).Cells.Offset(i, 0).Value ' type mismatch here
        End If
        With Sheets("Contacts").Range("A1")
            .Offset(rowToWriteTo, 0).Value = ClientTable.Columns(6).Cells.Offset(i, 0).Value ' first name
            .Offset(rowToWriteTo, 1).Value = ClientTable.Columns(2).Cells.Offset(i, 0).Value ' last name
            .Offset(rowToWriteTo, 5).Value = ClientTable.Columns(3).Cells.Offset(i, 0).Value ' email
            .Offset(rowToWriteTo, 6).Value = ClientTable.Columns(4).Cells.Offset(i, 0).Value ' DDI
            .Offset(rowToWriteTo, 7).Value = ClientTable.Columns(7).Cells.Offset(i, 0).Value ' mobile
            .Offset(rowToWriteTo, 8).Value = ClientTable.Columns(5).Cells.Offset(i, 0).Value ' title
        End With
        rowToWriteTo = rowToWriteTo + 1

    End If
    i = i + 1
Next

如果我删除这段代码,Sheets("Contacts").Range("A1") 分配都可以正常工作。

PS:使用 MsgBox 只是为了调试。尝试将 ClientTable.Columns(6).Cells.Offset(i, 0).Value 分配给字符串变量会产生相同的错误。

非常感谢您的任何帮助!

最佳答案

表达式 ClientTable.Columns(6).Cells.Offset(i, 0).Value产生一个值数组,因为 Columns(6)Range具有多个单元格的对象。您不能将此数组分配给字符串。也许你应该使用 ClientTable.Cells(i, 6).Value反而。所以你得到一个单一的值(value)。

关于vba - Excel VBA 类型不匹配引用 Cell.Value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32396748/

相关文章:

excel - Excel 中将时间舍入到最近的 15 分钟间隔

vba - Excel VBA : selected cells loop

vba - vba 代码中的 OLEObjects 错误 (Excel 2010)

ms-access - 过滤报告查询

python - 使用 python 脚本推断 excel 文件中的数据

excel - 如何同步多个Excel输入单元格

visual-studio - Visual Studio 中的 Excel 资源

python - 如何使用 python 将 plotly graph 保存为 excel 工作表图像?

excel - 检查是否为空并转换另一张工作表中的行

vba - 如何解锁和锁定 Excel 单元格以运行宏