Vba 返回句子的最后一个单词
尝试按如下方式获取I/O:Vba 返回句子的最后一个单词,vba,excel,Vba,Excel,尝试按如下方式获取I/O: Col B is input Col C will get output 1 ABC DEF JKH JKH 2 KJJB ljac Kjb Kjb 3 jabcl sjac casc casc . . 但我在第11行得到的错误是“无效的过程调用或参数”: 给你 Sub Santosh() Dim i&, v, w v = Wor
Col B is input Col C will get output
1 ABC DEF JKH JKH
2 KJJB ljac Kjb Kjb
3 jabcl sjac casc casc
.
.
但我在第11行得到的错误是“无效的过程调用或参数”:
给你
Sub Santosh()
Dim i&, v, w
v = Worksheets("Main").[b1:index(b:b,match("*",b:b,-1))].Value
For i = 1 To UBound(v)
w = Split(v(i, 1), " ")
v(i, 1) = w(UBound(w))
Next
Worksheets("Main").[c1].Resize(UBound(v)) = v
End Sub
给你
Sub Santosh()
Dim i&, v, w
v = Worksheets("Main").[b1:index(b:b,match("*",b:b,-1))].Value
For i = 1 To UBound(v)
w = Split(v(i, 1), " ")
v(i, 1) = w(UBound(w))
Next
Worksheets("Main").[c1].Resize(UBound(v)) = v
End Sub
str=单元格(“i,B”).Value'错误,此处为无效的过程调用或参数
语法错误。应为范围(“B”和i)
或单元格(i,“B”)
str=Cells(“i,B”)。此处的“值”错误为无效的过程调用或参数
语法错误。应该是范围(“B”和i)
或单元格(i,“B”)
考虑:
Option Explicit
Sub separate()
Dim strarr() As String
Dim sttr As String
Dim i As Long, j As Long
Dim k As Long
Dim ws As Worksheet
Set ws = Sheets("Main")
k = ws.Range("B1048576").End(xlUp).Row
For i = 1 To k
sttr = Cells(i, "B").Text
strarr = Split(sttr)
j = UBound(strarr)
Cells(i, "C").Value = strarr(j)
Next i
End Sub
考虑:
Option Explicit
Sub separate()
Dim strarr() As String
Dim sttr As String
Dim i As Long, j As Long
Dim k As Long
Dim ws As Worksheet
Set ws = Sheets("Main")
k = ws.Range("B1048576").End(xlUp).Row
For i = 1 To k
sttr = Cells(i, "B").Text
strarr = Split(sttr)
j = UBound(strarr)
Cells(i, "C").Value = strarr(j)
Next i
End Sub
我不确定它是否对您有帮助,但我认为
Range.Cells
Property()必须由数字索引引用。还有一件事:在单元格(“I,B”)
中,I和B是什么意思?@HaunsTM它的意思是I'th row和Bcol@HaunsTM执行以下更改后,仍然会出现相同的错误。'str=Range(.Cells(“i,B”)。值“i,C”不是有效的范围名称。我不确定它是否有帮助,但我认为Range.Cells
Property()必须由数字索引引用。还有一件事:单元格(“i,B”)中的i和B是什么意思
?@HaunsTM的意思是第i行和第B行col@HaunsTM执行以下更改后,仍然会出现相同的错误。'str=Range(.Cells(“i,B”)。值“i,C”不是有效的范围名称。如果v(i,1)=w(UBound(w))处的下标超出范围,则表示的数据不正确。解决方案在这里很有效。请把你的档案寄给我,我会马上整理。我的电子邮件是:丹尼尔。ferry@gmail.com.ok错误在B列的数据中,中间的一个单元格是空的,非常抱歉,您的代码运行得很好。很高兴听到这个消息,并且我能够提供帮助。不,如果下标在v(I,1)=w(UBound(w))处超出范围,那么您的数据就没有表示出来。解决方案在这里很有效。请把你的档案寄给我,我会马上整理。我的电子邮件是:丹尼尔。ferry@gmail.com.ok错误在B列的数据中,中间的一个单元格是空的,非常抱歉,您的代码运行得很好。很高兴听到这个消息,并且我能够提供帮助。谢谢这是一个完美的解决方案:)谢谢这是一个完美的解决方案:)