我知道这个问题已经以几种不同的方式提出来了,但是我无法运行代码。我对宏编程非常陌生(现在已经2天了)。这是我正在寻求帮助的部分。
If Box = "8" Then Workbooks("Narc Log.xlsm").Sheets("Fentanyl").Range("B5:F5").Copy _
Destination:=Workbooks("Box 8.xlsm").Sheets("Fentanyl").Range("B4")
这将复制特定范围的单元格。我想更改它以将6个单元格复制到活动单元格的左侧,然后粘贴到其他工作簿“ Box8”中的下一个可用行
感谢您对我的耐心。我敢肯定有一种方法可以比我做的要简单得多,但是我正在Google和像您这样的论坛的帮助下摸索着前进。
答案 0 :(得分:0)
首先,您应该找到活动单元格的位置
Dim c, r As Integer
r = ActiveCell.Row
c = ActiveCell.Column
Set sht = ActiveSheet
然后您可以使用范围功能来获取它们
with sht
sht.range(.cells(c-7,r) , .cells(c-1,r)).copy
end with
以及下面的其余代码。
P.S。我不喜欢使用.copy,因为它总是会出错。我更喜欢
Workbooks("Box 8.xlsm").Sheets("Fentanyl").Range("B4:B10").value = sht.range(.cells(c-7,r) , .cells(c-1,r)).value