Я работал с кодом VBA, который копирует первый лист в папке в другую книгу.
Код копирует данные правильно, но при сохранении я получаю определенные ячейки с ошибками (#Ref), это связано снекоторые из скопированных ячеек, имеющие формулу.
Я бы хотел, чтобы скопированные данные сохраняли исходное форматирование, но имели только значения.Или, альтернативно, ячейки с 2 ошибками - это M11 и O11, которые имеют формулу соответствия индекса, если эти значения в 2 ячейки можно вставить без формулы, остальные скопированные данные будут в порядке.
Любая помощь будет оценена.
Я пытался использовать PasteSpecial xlPasteValuesAndNumberFormats и .PasteSpecial xlPasteFormats, но я не уверен, как изменить функцию копирования.
Sub MergeMultipleWorkbooks()
Dim Path, Filename As String
Path = "C:\Users\User\Desktop\ProMacro\"
Filename = Dir(Path & "*.xlsx")
Do While Filename <> ""
With Workbooks.Open(Filename:=Path & Filename, ReadOnly:=True)
.Worksheets(1).Copy After:=ThisWorkbook.Sheets(1)
.Close False
End With
Filename = Dir()
Loop
MsgBox "Files has been copied Successfull", , "MergeMultipleExcelFiles"
End Sub
Код копирует первый лист из указанного файла вв папке, моя единственная проблема заключается в том, что некоторые ячейки будут иметь #Ref при сохранении файла как копируемых формул.