如何在 MS Excel 中将特定数据从一个 Excel 工作表传输到另一个工作表?
Posted
技术标签:
【中文标题】如何在 MS Excel 中将特定数据从一个 Excel 工作表传输到另一个工作表?【英文标题】:How to transfer specific data from one excel sheet to another in MS Excel? 【发布时间】:2021-02-22 04:29:03 【问题描述】:基本上,我有两张 Excel 表格。我想要做的是将特定的单元格值从当前单元格复制到另一个单元格。假设我有一张现金存款表格:
现金存款表格信息:
然后,我需要将一些需要的数据复制并粘贴到另一个表单中。
这是我要从现金存款中粘贴单元格值的表单:
我尝试了宏,但我对它的了解有限,这对我来说似乎很困难。有什么想法吗?
【问题讨论】:
【参考方案1】:Sub move_data()
Dim main_sheet As String
Dim target_sheet As String
Dim info1 As String
Dim target_info1 As String
Dim info2 As String
Dim target_info2 As String
'CONFIG
'--------------------------
main_sheet = "Sheet1" 'set sheet name to copy from
target_sheet = "Sheet2" 'set sheet name to paste in
'cells to copy
info1 = "A1"
info2 = "B1"
'cells to paste
target_info1 = "B1"
target_info2 = "B2"
'----------------------
Sheets(target_sheet).Range(target_info1) = _
Sheets(main_sheet).Range(info1)
Sheets(target_sheet).Range(target_info2) = _
Sheets(main_sheet).Range(info2)
End Sub
如果您需要复制/粘贴更多单元格,只需添加更多String
变量为info1
和info2
及其对应的目标单元格以粘贴并在End Sub
之前添加以下代码进行相应的更改在变量名中。
Sheets(target_sheet).Range(target_info2) = _
Sheets(main_sheet).Range(info2)
【讨论】:
【参考方案2】:将一组单元格的值复制到另一组单元格的方法如下:
假设您要将Sheet1中的“A2:G101”(100×7表)范围复制到Sheet2的“F2:L101”(100×7表)
Sheet2.Range("F2").Resize(100,7).Value = Sheet1.Range("A2").Resize(100,7).Value
在其他帖子中,您会看到 .Value
被省略,因为它是默认属性,但不建议这样做,因为它隐藏了代码的意图。
以上内容适用于Range()
规范中的[命名范围] 以及“A1”样式引用。 .Resize()
命令将引用从一个单元格扩展到多行和多列(给出为rows
、columns
)。
【讨论】:
以上是关于如何在 MS Excel 中将特定数据从一个 Excel 工作表传输到另一个工作表?的主要内容,如果未能解决你的问题,请参考以下文章
在 Excel 中将某些特定单元格从一个工作表复制到另一个工作表的 VBA 可能是啥?
在 Excel 中将特定信息从一个电子表格传输到另一个电子表格