gpt4 book ai didi

vba - PasteSpecial(运行时错误 1004)

转载 作者:行者123 更新时间:2023-12-04 21:55:53 25 4
gpt4 key购买 nike

我想将数据(公式)从一本书复制到另一本书,然后也复制到其他书籍及其工作表中。给出一个错误(运行时错误 1004)。
在插入的地方,只插入值(没有公式)。
行错误:Selection.PasteSpecial Paste:=xlPasteAll

    Sub Скопирователь()
Call Скопирователь1
Call Скопирователь2
End Sub


Sub Скопирователь1()
Dim book1 As Workbook
Dim book2 As Workbook
Dim A As String
Dim n As Long
Dim B()
A = "P34:P99"
Set book2 = Workbooks.Open("E:\Super M\Проект ставки\Поиск решения\Усов 6\Пишем условие vba\4-ое место\6.xlsm")
book2.Worksheets("6").Activate
Range("" + A + "").Copy

B = Array("7", "8", "16", "17", "21", "22", "23", "25", "26", "29", "30", "31", "54", "55", "56", "57", "58", "59")

'условия
For n = 0 To 17

Set book1 = Workbooks.Open("E:\Super M\Проект ставки\Поиск решения\Усов 6\Пишем условие vba\4-ое место\" & B(n) & ".xlsm")
book1.Worksheets("" & B(n) & "").Activate
Range("" + A + "").Select
Selection.PasteSpecial Paste:=xlPasteAll
'все листы
'Листы
book1.Save
book1.Close
Next n

End Sub

Sub Скопирователь2()
Dim book1 As Workbook
Dim book2 As Workbook
Dim A As String
Dim n, t As Long
Dim B()
Dim M()
A = "P34:P99"
B = Array("6", "7", "8", "16", "17", "21", "22", "23", "25", "26", "29", "30", "31", "54", "55", "56", "57", "58", "59")
M = Array("Лист1", "Лист2", "Лист3", "Лист4", "Лист5", "Лист6", "Лист7", "Лист8", "Лист9", "Лист10", "Лист11", "Лист12", "Лист13", "Лист14", "Лист15", "Лист16", "Лист17", "Лист18", "Лист19")
'условия
For n = 0 To 18

Set book1 = Workbooks.Open("E:\Super M\Проект ставки\Поиск решения\Усов 6\Пишем условие vba\4-ое место\" & B(n) & ".xlsm")


book1.Worksheets("" & B(n) & "").Activate
Range("" + A + "").Copy
'все листы
'Листы
For t = 0 To 18
book1.Worksheets("" & M(t) & "").Activate
Range("" + A + "").Select
Selection.PasteSpecial Paste:=xlPasteAll
Next t
book1.Save
book1.Close
Next n

End Sub

最佳答案

虽然它是西里尔文代码的一半(顺便说一句,我喜欢西里尔文)并且我无法复制它,但我猜你的错误在第二个 Selection.PasteSpecial Paste:=xlPasteAll .

因此,改变:
Range("" + A + "").Select至:Range("A:A").Select
你总共有4次Range("" + A + "")你应该到处改变它。一般来说,使用 SelectActivate在 VBA 中应避免使用。

玩得开心! :)

关于vba - PasteSpecial(运行时错误 1004),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45011008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com