#vba #excel #macros
#vba #excel #макросы
Вопрос:
Не мог бы кто-нибудь, пожалуйста, сказать мне, как я могу сохранить форматирование исходного кода при вставке в мою целевую книгу? Приведенный ниже код в основном переносит данные из одной электронной таблицы в другую, а затем удаляет повторяющиеся строки в целевой электронной таблице, если таковые имеются. Спасибо!
Sub TransferMar()
'
' Transfer Mar Macro
'
'
Dim lastRow As Long
ActiveSheet.Unprotect Password:="xxxxxx"
Columns.EntireColumn.Hidden = False
Rows.EntireRow.Hidden = False
Cells.AutoFilter
lastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Range(Cells(4, 1), Cells(lastRow, 15)).Copy
Application.DisplayAlerts = False
ActiveWorkbook.Close
Dim wkb As Workbook
Set wkb = Workbooks.Open("C:UsersxxxxxDesktopMaster - Mar.xlsx")
Columns.EntireColumn.Hidden = False
Rows.EntireRow.Hidden = False
Cells.AutoFilter
erow = wkb.Sheets(1).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
wkb.Sheets(1).Paste Destination:=Sheets(1).Range(Cells(erow, 1), Cells(erow, 15))
With ActiveSheet
Set Rng = Range("A3", Range("O3").End(xlDown))
Rng.RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15), Header:=xlYes
End With
wkb.ActiveSheet.Cells.EntireColumn.AutoFit
wkb.Close SaveChanges:=True
MsgBox "Rows copied into Master MAR Workbook"
End Sub
Комментарии:
1.
.PasteSpecial Paste:=xlPasteFormats
это синтаксис.2. закройте исходную книгу после вставки
3. Пропустить вступление не могли бы вы добавить эту строку кода в мой код, чтобы он заработал? Я не уверен, как включить в эту строку wkb. Листы (1).Место назначения вставки:=Листы (1).Диапазон (Ячейки (erow, 1), Ячейки (erow, 15))
Ответ №1:
Синтаксис для вставки special такой .PasteSpecial Paste:=xlPasteFormats
.
Вы могли бы реализовать это, изменив свой код на что-то вроде:
Worksheets(1).Range(Cells(erow, 1), Cells(erow, 15)).PasteSpecial Paste:=xlPasteFormats
Однако я все еще не уверен, что вышеописанное сработает, потому что вы закрываете книгу, содержащую скопированные данные, перед вставкой. Я совершенно уверен (непроверенный), что ваш код будет работать, если вы закроете предыдущую книгу после вставки. Лучшее решение — решать вам.