String Excel 2010将字符串写入单元格
我会给出一个完整的描述,但两年前在这个问题中已经提到了所有相关的内容,但这些内容完全没有得到解决: 我的程序尽可能简单:String Excel 2010将字符串写入单元格,string,vba,excel,String,Vba,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
`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`
我要做的就是把一个字符串分解成两个字符的单元格。当然,所有的东西都工作得很好,除了不管你对它做什么,它都不会向一个单元写入数据。我试过取消保护,我试过了。我试过制作一张新的工作表,你可以说出它的名字。这是excel中的一个错误,我现在想要的只是一个解决方法。您的代码中有一个错误 对于
i=0
,即循环的第一次迭代,以下代码将给出一个错误:
... .Cells(i, 1) ...
... .Cells(i, 2) ...
由于没有第0行。将其更改为:
... .Cells(i + 1, 1) ...
... .Cells(i + 1, 2) ...
它会起作用的。不确定它是否正是您想要的,但至少不会出现错误。很公平,这是我的错误。为什么它会给你一个“应用程序定义的或对象定义的错误”消息,而不是一些有意义的东西,并导致一个正确的结论,比如说“下标超出范围”,这似乎正适合这种情况?我仍然不明白最后一个家伙是如何遇到同样的问题并没有找到解决办法的。@user3897521:我没有投你反对票,我实际上是想帮助你。。。