所以我一直试图解决这个问题,我已经在同一个问题上找到了几个主题。我不能让它工作。
这是我的代码:
Sub FindLast()
Dim lCol As Long
Dim lRox As Long
Dim Copyrange As String
lCol = ActiveSheet.UsedRange.Column - 1 + ActiveSheet.UsedRange.Columns.Count
lRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
End Sub
Sub NameSplit()
Dim txt As String
Dim i As Integer
Dim FullName As Variant
Dim x As String, cell As Range
Dim charray(181, 3) As Integer
For Each cell In ActiveSheet.Range(Cells(1, 1).Address(), Cells(lRow, lCol).Address()).Select
txt = cell.Value
FullName = Split(txt, "-")
For i = 0 To UBound(FullName)
cell.Offset(0, i + 1).Value = FullName(i)
charray(j, i) = FullName(i)
Next i
Next cell
End Sub
在第一个子I中,我查找包含信息的最后一个单元格,并为lCol和lRow获得正确的输出。
在第二个子句中,我试图使用这两个值来分割一系列单元格。我为范围尝试了不同的语法,但我不断收到错误:
“应用程序定义或对象定义错误”
我无法调试,但我90%确定问题出在以下行:
For Each cell In ActiveSheet.Range(Cells(1, 1).Address(), Cells(lRow, lCol).Address()).Select
任何帮助将非常感激。
谢谢!
首先,说到错误,这是因为sub namesplit看不到lRow和lCol的值。将lRow和lcol定义为全局变量,以便值可见并且可以被所有模块访问。
其次,最好知道你在namesplit sub中尝试执行的操作的细节,这将至少帮助我进一步指导你。
谢谢..