Я работаю над макросом для объединения строк из разных файлов Excel, расположенных в одном каталоге. Вот текущая версия:
Sub Compilationb()
Dim Temp As String
Dim Lignea As Long
Temp = Dir(ActiveWorkbook.Path & "\*.xls")
Application.DisplayAlerts = False
Workbooks("RecapB.xls").Sheets(1).Range("A2:Z60000").ClearContents
Do While Temp <> ""
If Temp <> "RecapB.xls" Then
Workbooks.Open ActiveWorkbook.Path & "\" & Tempa
Workbooks(Tempa).Sheets(1).Range("A4").CurrentRegion.Copy
Workbooks("RecapB.xls").Sheets(1).Activate
Lignea = Sheets(1).Range("A65536").End(xlUp).Row + 1
Range("A" & CStr(Lignea)).Select
ActiveSheet.Paste
Workbooks(Temp).Close
End If
Temp = Dir
Loop
Range("A4").Select
Application.DisplayAlerts = True
End Sub
Работает просто отличноНо макрос копирует формулы.И я хочу вместо этого скопировать значения.Поэтому я попытался изменить строку
ActiveSheet.Paste
На
ActiveSheet.PasteSpecial xlPasteValues
Но это не работает.Видимо, метод «PasteSpecial» не работает с объектом «Activesheet».Кто-нибудь знает, как я могу заставить его копировать значения вместо этого?
Заранее спасибо