我正在处理循环数据输入脚本。在一些使用和函数的单元中是有用的,因为数据可以在许多相邻单元之一中,其中知道它将在哪个单元中是不可预测的,并且该范围中的所有其他单元将可预测地为零。
我首先命名我的变量
Dim file As Variant, I As Integer, Cval As String
输入我的文件夹并开始循环并打开工作簿
file = Dir("C:\Users\test\")
While (file <> "")
Workbooks.Open (file)
接下来,我在单元格A3中创建另一个带有初始值的变量,并在我增加时从每一行中获取文件名。
I = 1
Cval = Workbooks("VBA Practice Workbook").Sheets("Sheet1").Cells(I, 1) & ".xls"
Do Until Cval = file
I = I + 1
Cval = Workbooks("VBA Practice Workbook").Sheets("Sheet1").Cells(I, 1) & ".xls"
Loop
脚本贯穿第一页,第二页没有问题
Workbooks(file).Sheets("Cover Page").Range("E39:J39").Copy
Workbooks("VBA Practice Workbook.xlsm").Sheets("Sheet1").Cells(I, 2).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Workbooks(file).Sheets("Cover Page").Range("E41:J41").Copy
Workbooks("VBA Practice Workbook.xlsm").Sheets("Sheet1").Cells(I, 3).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Workbooks(file).Sheets("Scoring (pg 1)").Range("B59:C59").Copy
Workbooks("VBA Practice Workbook.xlsm").Sheets("Sheet1").Cells(I, 4).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
然后我切换到使用sum函数,我收到一条错误信息。知道什么可能导致我的问题吗?
Workbooks("VBA Practice Workbook.xls").Sheets("Sheet1").Range (Cells(I, 6) = Application.WorksheetFunction.Sum(Workbooks(file).Sheets("Scoring (pg 2)").Range("B6:B14")))
Workbooks("VBA Practice Workbook.xlsm").Sheets("Sheet1").Range (Cells(I, 7) = Application.WorksheetFunction.Sum(Workbooks(file).Sheets("Scoring (pg 2)").Range("C6:C14")))
答案 0 :(得分:0)
我猜你正在尝试将Sheet1上的某些单元格设置为“Scoring(第2页)”页面上的单元格总和。
但您当前的陈述是将有效工作表的JOIN
值与SELECT
gallery_url,
preview_url
FROM
my_gallery_previews
INNER JOIN my_galleries ON my_gallery_previews.gallery_id = my_galleries.gallery_id
WHERE
my_galleries.format = 'pictures'
计算的值进行比较,然后根据该比较是返回Cells(I, 6)
还是{{1使用结果作为Sum
属性的参数。
我相信你正在努力做到:
True
我已将原始工作簿名称保留在该代码中,但您可能希望确定它是写入的False
还是Range
工作簿。