2016-04-11 11 views
0

Biraz yardıma ihtiyacım var; Bir sayfadan veri seçmeye ve başka bir sayfaya aktarmaya çalışıyorum. Bu verileri seçmek için kullandığım ölçüt, .Range("A1:H" & lRow).AutoFilter Field:=2, Criteria1:="Ship" satırında belirtildiği gibi "Gemi" dir, ancak ölçütleri tanımlayabilmem için Ölçüt1: = Aralık ("A2") gibi bir şeyi kullanarak bu ölçütleri dinamik olarak seçmek istiyorum. VBA koduna gitmek yerine Excel sayfasında. Bunu yapmak için nasıl gidebilirim? sayesinde KishVerileri Seçmek İçin Dinamik Kriterleri Tanımla

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 

cevap

1

değiştirin: Eğer uygun A2 hücre için ne gibi çalışma sayfası kullanmak

Criteria1:=wsWhatever.Range("A2").Value 

: ile

Criteria1:="Ship" 

.