【发布时间】:2022-02-17 13:47:22
【问题描述】:
我将数据从工作簿复制到另一个工作簿,single contiguous selection 的复制工作没有问题。
但是,如果我复制了两个选择(使用 CTRL),即使是相邻的,也没有复制到目标工作簿(没有引发错误)。
如何调整以下代码以使其将非连续选择从工作簿复制到另一个?
提前感谢有用的答案和cmets。
Dim wb As Workbook: Set wb = ThisWorkbook 'Source Workbook
Dim srg As Range: Set srg = wb.ActiveSheet.Range(Selection.Address)
Dim wb1 As Workbook: Set wb1 = Workbooks.Add 'Destination Workbook
Dim drg As Range: Set drg = wb1.Sheets(1).Range("A1")
srg.Copy drg
srg.Copy
drg.PasteSpecial Paste:=xlPasteColumnWidths
Dim r As Range
For Each r In drg.Rows
r.WrapText = True
If r.RowHeight < 40 Then r.RowHeight = 40 'This line works
Next r
【问题讨论】:
-
您必须在某处出现 on 错误,因为这会引发错误。
-
@SJR ,未引发错误,但未在目标工作簿上粘贴值。
-
也许试着先把你的
srg.Copydrg.PasteSpecial Paste:=xlPasteColumnWidths行放在前面,然后把srg.Copy drg放在前面。但选择必须是同一列中的行。