如何将循环计数引入公式以跳过列

时间:2017-08-28 11:59:14

标签: excel vba loops formula bloomberg

我是Vba的初学者。我有以下代码:

email = response.xpath('//li[@class="email"]/a/span/text()').extract_first()

最初它的目的是在第3行的列中引入一个公式,但每次循环时在中间跳过一列。

无论如何,我意识到我的代码适用于刚才描述的概念但转置(跳过行以在B列的行中引入公式)。

由于列以字母命名,我不知道如何在公式en元素中引入循环以跳过列,因为我首先在指令中使用了行:

Sub addbdh() Dim i As Integer Dim n As Integer Range("A3").Select Range(Selection, Selection.End(xlToRight)).Select n = Selection.Count For i = 1 To n Cells(3, i * 2 - 1).Formula = "=BDH(B" & i * 2 - 1 & ",A1 ,B1 ,Today())" Next i End Sub

更具体地说,我不知道如何转换Cells(3, i * 2 - 1).Formula = "=BDH(B" & i * 2 - 1 & ",A1 ,B1 ,Today())"以便每次跳过一列而不是一行。

有人可以帮助我吗?

非常感谢

1 个答案:

答案 0 :(得分:0)

在公式中使用索引值时,有时使用R1C1公式样式比使用A1样式更容易。

在您的情况下,您的R1C1公式可能是:

Cells(3, i * 2 - 1).FormulaR1C1 = "=BDH(RC" & i * 2 - 1 & ",R1C1 ,R1C2 ,Today())"

表示第一个参数“与当前单元格在同一行中的单元格,第(2 * i-1)个列”,第二个“第1行第1列(也称为A1)”中的单元格最后一行“第1行第2列(又名B1)”。