Vba 运行时错误';438';对象没有';nt不支持此属性或方法

Vba 运行时错误';438';对象没有';nt不支持此属性或方法,vba,runtime-error,Vba,Runtime Error,我试图将活动工作簿中某个区域的内容复制到另一个工作簿中,我发现了一段vba代码,我认为它非常适合我的需要。 尽管如此,每次尝试运行它时,我都会收到以下错误:运行时错误“438”对象不支持此属性或方法。 我想问题在于我在目标工作簿中选择范围的方式,但操作系统不起作用。 有人能帮忙吗 以下是我所拥有的: Sub Retânguloarredondado1_Click() Dim InputFile As Workbook Dim OutputFile As Workbook Dim Inputpa

我试图将活动工作簿中某个区域的内容复制到另一个工作簿中,我发现了一段vba代码,我认为它非常适合我的需要。 尽管如此,每次尝试运行它时,我都会收到以下错误:运行时错误“438”对象不支持此属性或方法。 我想问题在于我在目标工作簿中选择范围的方式,但操作系统不起作用。 有人能帮忙吗

以下是我所拥有的:

Sub Retânguloarredondado1_Click()

Dim InputFile As Workbook
Dim OutputFile As Workbook
Dim Inputpath As String
Dim Outputpath As String '
Dim TP As Worksheet

' Set path for Input & Output
fileInputpath = "C:\Users\Nuno Bonaparte\Desktop\"
Outputpath = "C:\Users\Nuno Bonaparte\Desktop\"

'## Open both workbooks first:
Set InputFile = ActiveWorkbook
Set OutputFile = Workbooks.Open(Outputpath & "file2.xlsm")
Set TP = OutputFile.Worksheets("Folha1")

'Now, copy what you want from InputFile:
InputFile.Sheets("file2").Activate
InputFile.Sheets("file2").Range("A1:A12").Copy

'Now, paste to OutputFile worksheet:
OutputFile.Sheets("Folha1").Activate
TP.Range("A1").PasteSpecialOutputFile.Save

'Close InputFile & OutputFile:
InputFile.Close
OutputFile.Close

End Sub

查看此代码是否出现相同的错误:

Sub Retânguloarredondado1_Click()

Dim Paths As String

' Set path
Paths = "C:\Users\Nuno Bonaparte\Desktop\"

'## Open both workbooks first:
Workbooks.Open(Paths & "file1.xlsm")
Workbooks.Open(Paths & "file2.xlsm")

'Now, copy what you want from InputFile:
Workbooks("file1.xlsm").Sheets("file2").Range("A1:A12").Copy

'Now, paste to OutputFile worksheet:
Workbooks("file2.xlsm").Worksheets("Folha1").Range("A1").PasteSpecial
Workbooks("file2.xlsm").Save

'Close InputFile & OutputFile without saving
InputFile.Close False
OutputFile.Close False

End Sub

当您运行宏并得到错误时,它会突出显示哪一行代码?这一行:“TP.Range(“A1”).PasteSpecialOutputFile.Save”将变量
OutputFile
设置为等于打开的命令,但随后将其用作工作簿的名称。这是你的问题。您还应该定义
输入文件
。这两个文件(工作簿)的名称是什么?file1.xlsm和file2.xlsmI我对输入文件没有问题,因为它是我的活动工作簿。当我运行代码时,InputFile显示复制的选定区域,然后打开OutputFile,但它不会高亮显示要粘贴内容的选定单元格,并立即停止。不工作,现在,当我运行代码时excel实例突然关闭更新了一些语法。现在就试试,想想问题解决了。我相信范围不支持粘贴。我改成了pastespecial,效果很好。无论如何,谢谢。我已经更改了这一行:TP.Range(“A1”).pasteSpecialOutFile.Save为这一行:TP.Range(“A1”).pasteSpecialXLPasteAll,它成功了。然后我在关闭命令之前保存了工作簿Yep。。。看到了那个语法错误,并在我的代码中更正了它。