0

我最初试图运行这个公式,但发现我无法自动填充过滤的选择。继承人的代码:

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 应用于 I 列。

例如。

单元格 G2:城市链接

单元格 H2:12345

如果单元格 G2 = City Link,则列 I2 = HYPERLINK(" http://www.packagetrackr.com/track/citylink/ "& H2 &")

任何建议都会很棒!

4

1 回答 1

0

您可以使用 for 循环来完成此操作。


   选项显式

   将 oCell 调暗为范围

   对于范围内的每个 ocell(***)

    如果 ocell = "dpd" 那么 ocell.offset(0,1) = "hyperlink"
    如果 ocell = "城市链接" 然后 ocell.offset(0,1) = "超链接"
    如果 ocell = "hermes" 那么 ocell.offset(0,1) = "hyperlink"


   下一个


偏移量是远离 Ocell 原始位置的列数。

我希望这有帮助

于 2013-04-22T17:06:00.280 回答