我会给出一个完整的描述,但两年前这个问题中已经说过的所有相关内容都完全没有解决:
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中的一个错误,此时我想要的只是一种解决方法。
答案 0 :(得分:1)
您的代码中有错误。
对于i = 0
,即循环的第一次迭代,以下代码将给出错误:
... .Cells(i, 1) ...
... .Cells(i, 2) ...
那里没有第0行。将其更改为:
... .Cells(i + 1, 1) ...
... .Cells(i + 1, 2) ...
它会起作用。不确定它到底是你想要的,但至少它不会给出错误。