挣扎着绕过这个宏,为什么它不起作用。
我已经接过其他人,每当我尝试编辑它时,它都会回到De-Bug。
目的是将表1,行C上的表格中的行复制到下一行 - 但我希望它从上面复制第I列的信息:J和K:L。
此外,当复制并插入“Advisor周”列时,代码已经包含了我想要隐藏的列,因此当隐藏列时运行时,它无法正常工作。 / p>
Dim Lr As Integer
Dim AWFr As Long, AWLc As Long
AWFr = 14
Lr = Range("C" & Rows.Count).End(xlUp).Row
Rows(Lr + 1).Insert Shift:=xlDown
Cells(Lr + 1, "C") = Cells(Lr, "C") + 1
Rows(Lr).Copy
Rows(Lr + 1).PasteSpecial Paste:=xlPasteFormats
With Worksheets("Advisor Week")
AWLc = .Cells(AWFr, .Columns.Count).End(xlToLeft).Column
.Cells(AWFr, AWLc - 5).Resize(, 5).EntireColumn.Insert Shift:=xlToLeft
.Columns(AWLc - 5).ColumnWidth = 0.5
.Columns(AWLc - 9).Resize(, 5).Copy Destination:=.Columns(AWLc - 4)
Application.CutCopyMode = False
End With
如果需要,我可以愉快地发送图片,但没有足够的Rep在这里发布
答案 0 :(得分:0)
这不是答案。我会在评论中提出我的问题,除了我已经记录了你的宏并希望分享结果。我或许应该用修改后的宏更新你的问题但是已经决定最好把它分开。
在尝试修改继承的代码之前,我确保确切地知道它的作用。如有必要,我将逐步逐句陈述并记录每份陈述。像D_Zab一样,我不明白这个代码是在尝试什么。这是原始代码还是部分修改?
你说“第一栏:J和K:L”而不是“第一栏:L”?这有什么意义?
在我的实验中,隐藏列的存在并没有什么区别。
我很抱歉,但我不知道这意味着什么:“目的是将第1页,第C行表格中的行复制到下一行 - 但我希望它能从上面复制信息第一栏:J和K:L。“
Option Explicit
Sub Test()
Dim Lr As Integer
Dim AWFr As Long, AWLc As Long
AWFr = 14
' Find last used row in column C of active worksheet
Lr = Range("C" & Rows.Count).End(xlUp).Row
' Insert row below last row in column C of active worksheet. If other
' columns have values below the last used row in C, those values will
' be moved down one row. The formatting (except borders) of the last
' used row in C is copied to the inserted row.
Rows(Lr + 1).Insert Shift:=xlDown
' Add 1 to last cell in column C of active worksheet and store in
' next row down.
Cells(Lr + 1, "C") = Cells(Lr, "C") + 1
' Copy formats (including borders) from last row with a value
' in column C of active worksheet to next row down.
Rows(Lr).Copy
Rows(Lr + 1).PasteSpecial Paste:=xlPasteFormats
With Worksheets("Advisor Week")
' Find last used column in row 14
AWLc = .Cells(AWFr, .Columns.Count).End(xlToLeft).Column
' Insert columns to move last used column in row 14, and the four
' columns to its left, to the right
.Cells(AWFr, AWLc - 5).Resize(, 5).EntireColumn.Insert Shift:=xlToLeft
' Set column width of first new column to half the width of character "0"
' which is 7 pixels with Tahoma 10.5.
.Columns(AWLc - 5).ColumnWidth = 0.5
' Copy the four columns to the left of the inserted columns, and the
' first inserted (narrow) column, over the last four inserted columns
' and the first column that was shifted right
.Columns(AWLc - 9).Resize(, 5).Copy Destination:=.Columns(AWLc - 4)
Application.CutCopyMode = False
End With
End Sub