Я пытаюсь auto-copy
rows
от мастера worksheet
до отдельного worksheet
.Это происходит, когда определенное значение вводится в Column B
в Master sheet
.Например, если ABC
введено в Column B
в Master, эти rows
будут автоматически скопированы на отдельный лист под названием ABC
.
Проблема в том, что у меня есть другие значения, которые я хочу скопировать в другие таблицы.Например, если в столбце B в поле Master введено DEF
, то автоматически скопируйте его на отдельный лист с именем DEF
.Я не знаю, как это сделать.
Приведенный ниже код автоматически копирует все строки, когда Change
вводится в Column B
.Это прекрасно работает, но я также хочу добавить еще одну функцию, которая copies
все rows
, когда вводится «Задержка».
Sub FilterAndCopy()
Dim rng As Range, sht1 As Worksheet, sht2 As Worksheet
Set sht1 = Worksheets("Master")
Set sht2 = Worksheets("Change")
sht2.UsedRange.ClearContents
With Intersect(sht1.Columns("B:BP"), sht1.UsedRange)
.Cells.EntireColumn.Hidden = False ' unhide columns
If .Parent.AutoFilterMode Then .Parent.AutoFilterMode = False
.AutoFilter field:=1, Criteria1:="Change"
.Range("A:F, BL:BO").Copy Destination:=sht2.Cells(4, "B")
.Parent.AutoFilterMode = False
.Range("H:BK").EntireColumn.Hidden = True ' hide columns
End With
End Sub
Этот код просто копирует команду Изменить строки из мастер-листа на лист изменения.
Однако я хочу добавить еще одну функцию, которая копирует строки задержки из мастер-листа в лист задержки.Я просто не уверен, может ли это быть включено в код выше?Или, если я могу сделать следующее:
Sub FilterAndCopy()
Dim rng As Range, sht1 As Worksheet, sht3 As Worksheet
Set sht1 = Worksheets("Master")
Set sht3 = Worksheets("Delay")
sht3.UsedRange.ClearContents
With Intersect(sht1.Columns("B:BP"), sht1.UsedRange)
.Cells.EntireColumn.Hidden = False ' unhide columns
If .Parent.AutoFilterMode Then .Parent.AutoFilterMode = False
.AutoFilter field:=1, Criteria1:="Delay"
.Range("A:B, BJ:BO").Copy Destination:=sht2.Cells(4, "B")
.Parent.AutoFilterMode = False
.Range("D:BI").EntireColumn.Hidden = True ' hide columns
End With
End Sub
ОБРАТИТЕ ВНИМАНИЕ: Этот макрос должен быть запущен без запуска сценария.