excel - 我需要将多个用户选择的行复制到不同的工作表。问题是,每次宏运行时选择的行都不同

标签 excel vba copy-paste

假设用户选择了 E3 和 E4,有没有办法复制 E3 和 E4 的值,以及它们右侧的下三个单元格 (F3:H4)?

我尝试使用 ActiveCell.Resize 但我不知道如何复制选定的行,因为选定的行会根据用户而变化。

这是我的代码示例:

ActiveCell.Resize(, 4).Copy Destination:=Worksheets("Sheet3").Range("b7:e14")

最佳答案

使用Selection而不是 ActiveCell .
Selection包含 全部 选定的单元格而 ActiveCell在整个 Selection 中始终只有一个单元格.

在以下示例中 Selection将是 Range("A2,B5,A7,A10:B10")但是 ActiveCell将是 Range("A10") .

enter image description here

关于excel - 我需要将多个用户选择的行复制到不同的工作表。问题是,每次宏运行时选择的行都不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54554488/

相关文章:

c# - Excel 中的彩色文本部分 >255 个字符

excel - `Range.Hyperlink.Shape` 有什么作用?

ios - 为什么在 shouldChangeCharactersIn 中返回 false 会覆盖 UITextField 中的旧文本?

vba - 打开问题时自动运行

java - 如何在Excel中动态汇总工作时间?

excel - 如何在 VBA 中将字典作为参数传递?

vba - CopyMemory 使 Excel 应用程序崩溃

sql-server - SQL - 确定列中最常出现的单词

ios - 将图像粘贴到 UITextView 导致崩溃

iphone - 获取在 UIWebView 中加载的 pdf 文件的选定文本