【发布时间】:2015-04-30 14:52:19
【问题描述】:
我正在尝试让我的程序运行 2 个工作簿和 3 个工作表。为我验证一些数字。
Sub Validate_Old_Data()
Dim DBLbrow As Double
Dim DBLAbrow As Double
Dim DBLBbrow As Double
Dim STRname As String
Dim INTcc As Integer
Dim CopyRange As Range
DBLbrow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row
Do While BDLbrow > 5
STRname = Range("B" & DBLbrow).Value
INTcc = Range("C" & DBLbrow).Value
Workbooks("Z:\Centralized Charges\Centralized Charges 2015\Forecast and Actuals\P3\Headcount Templates\P3 Centralized Charges Headcount Tracker (vs. 2015 Budget).xlsx").Activate
Worksheets(INTcc).Activate
DBLAbrow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row
Do While DBLAbrow > 8
If Range("B" & DBLAbrow).Value = STRname Then
CopyRange = Range(DBLAbrow).Row.Copy
Workbooks("Z:\Centralized Charges\Centralized Charges 2015\Forecast and Actuals\P3\Headcount Templates\Charges Headcount Tracker (vs. 2015 Budget).xlsm").activatae
Worksheets(INTcc).activatae
DBLBbrow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row
If Range("B" & DBLBbrow).Value = STRname Then
Range(DBLbrow).Value = CopyRange
Else
DBLBbrow = DBLBbrow - 1
End If
Loop
Else
DBLAbrow = DBLAbrow - 1
End If
Loop
BDLbrow = BDLbrow - 1
End Sub
但我收到 Invalid Qualifier 错误,有人可以解释原因吗?
【问题讨论】:
-
你能多谈谈你想用这段代码做什么吗?也许将其缩小到一个较小的块。
-
停在哪一行?
-
它在第一行就停止了......我以前从未遇到过这个问题。这段代码的目的是遍历一个列表,在电子表格 B 中找到相应的值,然后将我拥有的所有数据返回到电子表格 A。
-
不知道这是否是问题所在,但您的拼写错误......您的代码显示“Do While BDLBrow > 5”,但您的变量名为“DBLBrow”。我建议使用 Option Explicit 以避免将来出现此类错误。
-
@Sam 我前段时间也这么想,但不是,他们也“学会”了接受字母 :)
标签: excel vba do-loops qualifiers