首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据从一个工作表复制到另一个工作表

将数据从一个工作表复制到另一个工作表
EN

Stack Overflow用户
提问于 2022-02-17 20:32:31
回答 1查看 42关注 0票数 1

我有处理和消除质谱数据的代码(这是可行的)。

我有另一个命令从工作表中复制数据,并将其粘贴到宏(Sheet1)的同一个工作表中。它将一行代码粘贴到工作表上,而不是proteinGroups中的信息。

代码语言:javascript
复制
Set wb = Workbooks.Open("C:\Users\X241066\Downloads\PGroupTest.xlsm")
myFile = "C:\Users\X241066\Desktop\Pgroup\proteinGroups.xls"
Workbooks.Open myFile
Worksheets("proteinGroups").Copy
Workbooks("ProteinGroups.xls").Close SaveChanges:=True
wb.Activate
ActiveSheet.Paste Destination:=Worksheets("Sheet1").Range("E1")
Application.CutCopyMode = False

我尝试的每一次命令迭代都会将数据粘贴到一个新的随机工作簿中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-17 21:05:32

UsedRange复制到另一个工作簿

如果没有指定之前或之后,Microsoft将创建一个新的工作簿,其中包含复制的工作表对象.。

代码语言:javascript
复制
Option Explicit

Sub CopyProteinGroups()
    
    ' Source (Copy FROM (Read))
    Dim swb As Workbook
    Set swb = Workbooks.Open("C:\Users\X241066\Desktop\Pgroup\proteinGroups.xls")
    Dim sws As Worksheet: Set sws = swb.Worksheets("ProteinGroups")
    Dim srg As Range: Set srg = sws.UsedRange
    
    ' Destination (Copy TO (Write))
    Dim dwb As Workbook
    Set dwb = Workbooks.Open("C:\Users\X241066\Downloads\PGroupTest.xlsm")
    Dim dws As Worksheet: Set dws = dwb.Worksheets("Sheet1")
    Dim dfCell As Range: Set dfCell = dws.Range("E1")
    
    ' Copy
    srg.Copy dfCell
    
    ' Save and/or Close
    swb.Close SaveChanges:=False ' no need to save; it was only read from
    
    ' dwb.Close SaveChanges:=True ' save when you're done; it was written to
    
End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71165013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档