我正在尝试编写代码来组织数据转储。
基本上我需要提取
asdf来自: 123456 asdf 123456789
我可以在Excel中以正常工作表模式执行此操作,但我在VBA中遇到此问题。从理论上讲,下面的代码应该返回9个空格的字符串,右边9个空格,但代码只是挂起并出现错误。
Set wks = ActiveWorkbook.ActiveSheet
LastRow = wks.UsedRange.Rows.Count
For MyRow = 1 To LastRow
celltxt = wks.Cells(MyRow, 1).Text
If InStr(1, celltxt, "name") Then
LString = Len(wks.Cells(MyRow, 1))
wks.Cells(MyRow, 1) = RIGHT(LEFT(wks.Cells(MyRow, 1),LString-6),LString -9)
End If
Next For
答案 0 :(得分:0)
没关系,明白了。我已经定义了变量celltxt,所以我可以参考LEN
函数。它一定是一个错误,因为我试图引用我正在编辑的单元格的方式。
If InStr(1, celltxt, "name") Then
wks.Cells(MyRow, 1) = Right(Left(celltxt, Len(celltxt) - 7), Len(celltxt) - 16)
End If
答案 1 :(得分:0)
简单地用什么都不替换字符串部分会不会更容易?
For MyRow = 1 To LastRow
wks.Cells(MyRow, 1) = replace(wks.Cells(MyRow, 1), "name", vbnullstring, vbtextcompare)
Next For