2013-04-22 41 views
0

我最初试图运行此公式,但发现我无法自动填充筛选的选择。继承人代码:循环VBA可能吗?

Range("I1").Select  
ActiveCell.FormulaR1C1 = _ 
"=IF(RC[-2]=""dpd"",HYPERLINK(""http://www.dpd.co.uk/tracking/quicktrack.do?search.consignmentNumber=""&RC[-1]&""&search.searchType=16&search.javascriptValidated=0&appmode=guest""))" 
Range("I1").Select 
Selection.AutoFill Destination:=Range("i1:i" & Range("A" & Rows.Count).End(xlUp).Row), Type:=xlFillCopy 
Range("I2").Select 
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 

Range("A1:I1").Select 
ActiveSheet.Range("A1:i1").AutoFilter Field:=9, Criteria1:="FALSE" 
Range("I2").Select 
ActiveCell.FormulaR1C1 = _ 
"=IF(R[-1]C[-2]=""City Link"",HYPERLINK(""http://www.packagetrackr.com/track/citylink/""&R[-1]C[-1]&""""))" 
    Range("I2").Select 
Selection.AutoFill Destination:=Range("i2:i" & Range("A" & Rows.Count).End(xlUp).Row), Type:=xlFillCopy 

Range("A1:I1").Select 
ActiveSheet.Range("A1:i1").AutoFilter Field:=9, Criteria1:="FALSE" 
Range("i2").Select 
ActiveCell.FormulaR1C1 = _ 
    "=IF(R[-1]C[-2]=""hermes"",HYPERLINK(""http://www.hermes-europe.co.uk/tracker.html?trackingNumber=""&R[-1]C[-1]&""&Postcode=""&R[-1]C[-4]&R[-1]C[-3]&""""))" 
    Range("I2").Select 
Selection.AutoFill Destination:=Range("i2:i" & Range("A" & Rows.Count).End(xlUp).Row), Type:=xlFillCopy 

也许循环会更好?

我似乎无法自动填充筛选的选择。

我在G列约20个值,以及不同的数据列H.根据G是什么样的列,不同的超级链接URL已被应用到导柱

EG。

细胞G2:市菱

细胞H2:12345

如果细胞G2 =城市环线,然后列I2 = HYPERLINK( “http://www.packagetrackr.com/track/citylink/” & H2 &“)

任何建议将是太棒了!

回答

0

你可以使用for循环来完成这个。


 
    Option explicit 

    Dim oCell as range 

    For each ocell in range(***) 

    if ocell = "dpd" then ocell.offset(0,1) = "hyperlink" 
    if ocell = "City link" then ocell.offset(0,1) = "hyperlink" 
    if ocell = "hermes" then ocell.offset(0,1) = "hyperlink" 


    Next 


偏移量是从oCell的您的一部开拓创新的地点,距离列数。

我希望这可以帮助