0
私は助けが必要です。私は1つのシートからデータを選択し、別のシートに転送しようとしています。このデータを選択するために使用している基準は、.Range("A1:H" & lRow).AutoFilter Field:=2, Criteria1:="Ship"
行に記載されているように "Ship"ですが、Criteria1:= Range( "A2")のようなものを使用してその基準を動的に選択して基準を定義できますExcelシート上でVBAコードに移動する必要はありません。これをやり遂げるにはどうすればいいですか? おかげで、 キッシュデータを選択するための基準を動的に定義する
Sub ImportShipper()
Dim wsEff As Worksheet
Dim wsShip As Worksheet
Dim wsFirst As Worksheet
Set wsEff = Worksheets("Efficiency")
Set wsFirst = Worksheets("1")
Set wsShip = ActiveSheet
wsShip.Name = wsFirst.Range("B34").Value
With wsEff
Dim lRow As Long
lRow = .Range("A" & .Rows.Count).End(xlUp).Row
.Range("A1:H" & lRow).AutoFilter Field:=2, Criteria1:="Ship"
Dim rngCopy As Range
'All Columns A:H
Set rngCopy = .Columns("A:H")
'filtered rows, not including header row - assumes row 1 is headers
Set rngCopy = Intersect(rngCopy, .Range("A1:H" & lRow), .Range("A1:H" & lRow).Offset(1)).SpecialCells(xlCellTypeVisible)
rngCopy.Copy
End With
wsShip.Range("A4").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Worksheets("Efficiency").ShowAllData
End Sub