【问题标题】:Excel 2010 Write String to Cell [duplicate]Excel 2010将字符串写入单元格[重复]
【发布时间】:2014-08-01 07:06:20
【问题描述】:

我会给出一个完整的描述,但是两年前这个问题中已经说过所有相关的内容,但完全没有解决:

Writing a string to a cell in excel

我的程序尽可能简单:

`Sub separate()
Dim stri As String
Dim i As Long
stri = Sheets("HEXDUMP").Cells(1, 5).Text
For i = 0 To (Len(stri) / 4)
    Sheets("HEXDUMP").Cells(i, 1).Value = Mid(stri, ((i * 2) + 1), 2)
    Sheets("HEXDUMP").Cells(i, 2).Value = Mid(stri, ((i * 2) + 3), 2)
Next i
End Sub`

我想要的只是获取一个字符串并将其分解为每个包含两个字符的单元格。当然,一切都完美无缺,只是无论你对它做什么,它都不会写入单元格。我尝试取消保护我尝试了 .text 我尝试制作一个新表重新启动你的名字。这是 excel 中的一个错误,我现在想要的只是一种解决方法。

【问题讨论】:

    标签: string vba excel


    【解决方案1】:

    您的代码中有错误。

    对于i = 0,即循环的第一次迭代,下面的代码会报错:

    ... .Cells(i, 1) ...
    ... .Cells(i, 2) ...
    

    因为 没有第 0 行。将其更改为:

    ... .Cells(i + 1, 1) ...
    ... .Cells(i + 1, 2) ...
    

    它会起作用的。不确定它是否正是你想要的,但至少它不会出错。

    【讨论】:

    • 这是我的错误。为什么它会给你一个“应用程序定义的或对象定义的错误”消息,而不是一些有意义的东西并导致一个正确的结论,比如说“下标超出范围”,这似乎正是针对这种情况?而且我还是不明白最后一个人是怎么遇到同样的问题却找不到解决办法的。
    • @user3897521:我没有给你投反对票,我实际上是想帮助你......
    猜你喜欢
    • 2012-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-28
    • 2018-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多