0
我正在尝试创建一个将选定范围从excel的一个实例粘贴到excel的第二个实例的宏。将表格粘贴到不同的excel实例
现在我面临2个问题。
第一个问题是我无法自动将范围粘贴到与选择范围相同的地址上(尽管在不同的工作表上)。
第二个问题是我设法粘贴值,但如果我真的尝试复制表格,它会被粘贴为图片。
我也不确定我的代码是否非常高效,这些只是我从互联网上复制过来的点点滴滴。
在此先感谢您的帮助。
Private Sub CommandButton1_Click()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim ws As Workbook
Dim rng As Range, dst As Range
Dim vals() As Variant
Dim xlSht
Set ws = ThisWorkbook
'select second file
fpath = Application.GetOpenFilename(, , Title:="Please select a file")
If fpath = False Then
' They pressed Cancel
MsgBox "Stopping because you did not select a file"
Exit Sub
Else
Set xlApp = New Excel.Application
Set xlBook = xlApp.Workbooks.Open(fpath)
xlApp.Visible = True
End If
ws.Sheets(2).Select
Set rng = Application.InputBox(Prompt:="Please Select Range", Title:="Range Select", Type:=8)
Set xlSht = xlApp.Sheets(1)
xlSht.Range("A1").Select
Set dst = xlApp.InputBox(Prompt:="Please Select Range", Title:="Range
Select", Type:=8)
rng.Copy
dst.PasteSpecial xlPasteAll
'vals = rng
'dst.Value = vals
End Sub
嗨,问题是,如果我用xlpastevalues,我所有的公式都将丢失。有没有xlpastesomething,这也保持公式? –
不适用于粘贴到另一个excel实例。显然'xlPasteFormulas'也贴上一张图片。你尝试了我推荐的方法吗?当您在同一个实例中打开第二个工作簿时,公式将被复制。 – arcadeprecinct
关键是我正在做这件事的人希望有两个独立的实例运行(这并没有多大意义),因为有太多的公式来保存文件在一个实例中。 –