У меня есть код, который работает почти так же, как я хотел бы, ниже.На данный момент у меня есть два листа: один для Y-отдела и один для X-отдела.Мне нужна кнопка для передачи диапазона ячеек (A: L) от листа Y-отдела к листу X-отдела.Я не хочу вставлять всю строку, потому что на листе X-отдела есть формулы из MW, которые перезаписываются, когда я делаю это.
На данный момент это почти работает.Но это позволяет мне проходить только один ряд за раз.Можно ли редактировать этот код так, чтобы я мог выбрать более одной строки за раз, и он будет вырезать и вставить (только ячейки A: L of) все эти строки на лист X-отдела?
Заранее спасибо!
Sub Pass_to_Xdepartment()
If MsgBox("Do you want to pass the selected tours to Xdepartment?", vbYesNo, "Pass to XDepartment") = vbNo Then Exit Sub
For Each WSheet In ActiveWorkbook.Worksheets
If WSheet.AutoFilterMode Then
If WSheet.FilterMode Then
WSheet.ShowAllData
End If
End If
For Each DTable In WSheet.ListObjects
If DTable.ShowAutoFilter Then
DTable.Range.AutoFilter
DTable.Range.AutoFilter
End If
Next DTable
Next WSheet
'Declare variables
Dim sht1 As Worksheet
Dim sht2 As Worksheet
Dim lastRow As Long
'Set variables
Set sht1 = Sheets("YDepartment")
Set sht2 = Sheets("XDepartment")
'Select Entire Row
Range("A" & ActiveCell.Row & ":L" & ActiveCell.Row).Select
'Move row to destination sheet & Delete source row
lastRow = sht2.Range("A" & sht2.Rows.Count).End(xlUp).Row
With Selection
.Copy Destination:=sht2.Range("A" & lastRow + 1)
.EntireRow.Delete
End With
End Sub
Кроме того, вы не знаете, есть ли способ настроить эту кнопку так, чтобы она отправляла электронное письмо одновременно с передачей данных для уведомления X-отдел, когда ряды были переданы на их лист?Это второстепенная проблема.