Ниже код копирует данные из листа1 в лист2 на основе критериев, указанных в коде ниже.Я хочу вставить столбцы в начале или в конце листа 2, когда я запускаю код VB.Было бы здорово, если бы я мог также предоставить различные типы фильтров в каждой ячейке для каждого нового столбца, который я хотел бы добавить.Например, я хотел бы добавить один новый столбец в sheet2, когда код VB вставляет данные из sheet1 в sheet2.Имя столбца «Действие» с опцией фильтра «Закрыть, оставить, открыть» для каждой ячейки в столбце «Действие»
Option Explicit
Private Sub CommandButton21_Click()
Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Sheet1")
Dim i As Long, MyUnion As Range, LRow As Long
For i = 2 To ws.Range("A" & ws.Rows.Count).End(xlUp).Row
If ws.Range("G" & i) > #10/31/2013# Or ws.Range("AA" & i) = "Investigate" Or ws.Range("AA" & i) = "Leave Open" Then
If Not MyUnion Is Nothing Then
Set MyUnion = Union(MyUnion, ws.Range("G" & i))
Else
Set MyUnion = ws.Range("G" & i)
End If
End If
Next i
If Not MyUnion Is Nothing Then
With ThisWorkbook.Sheets("Sheet2")
LRow = .Range("A" & .Rows.Count).End(xlUp).Offset(1).Row
MyUnion.EntireRow.Copy .Range("A" & LRow)
End With
End If
End Sub