繁体   English   中英

我需要复制活动单元格旁边的 6 个单元格

[英]I need to copy the 6 cells next to an active cell

我知道这个问题以几种不同的方式被问到,但我无法运行代码。 我对编码宏很陌生(现在已经有 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”中的下一个可用行

首先,您应该找到活动单元格的位置

  Dim c, r As Integer
    r = ActiveCell.Row
    c = ActiveCell.Column
Set sht = ActiveSheet

那么你可以使用 range 函数来获取它们

with sht
sht.range(.cells(c-7,r) , .cells(c-1,r)).copy
end with

和下面的其余代码。

PS 我不喜欢使用 .copy 因为它总是遇到错误。 我更喜欢类似的东西

Workbooks("Box 8.xlsm").Sheets("Fentanyl").Range("B4:B10").value = sht.range(.cells(c-7,r) , .cells(c-1,r)).value

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM