【发布时间】:2018-10-09 04:11:03
【问题描述】:
我正在使用 VBA 程序,我想复制一系列单元格,然后将其粘贴到新工作表中,标题是文本“Delivery for”后面的字符串
例如我想复制“Delivery for Sam”下的范围和名称 新工作表应为“Sam”
Dim N as long
N = Range(Cells(rcell, Col_Western).End(xlDown).Row)
With ActiveSheet
For rcell = 1 To lastrow
If InStr(1, Cells(rcell, Col_Western), "Delivery for", vbBinaryCompare) > 0 Then
Range(ActiveCell & N).Select
Selection.Copy After:=Worksheets(Sheets.Count)
ActiveSheet.Name = "QBS"
End If
Next rcell
End With
【问题讨论】:
-
我想你的第一个运行时错误在第二行。
-
@jeeped 是的,这似乎是个问题,但我似乎找不到其中的错误
-
您的代码是一团糟,自相矛盾,尝试使用未引用的变量并且不使用它分配的变量。建议您从宏记录器重新开始。
-
我尝试使用宏记录器,但是将使用的范围会有所不同,因此我无法引用特定的单元格引用
-
N 应该是最后一行吗?如果是,那么我建议将其称为 LastRow 或 LR 或 lRow。 LastRow= Cells(Rows.Count, 1).End(xlUp).Row 其中第 1 列 = A 列。