vba - 计算多个 csv 文件中的数据

标签 vba excel

我在共享文件夹中有数百个文件夹的链接
例如:

a:\Images\abc\year\month\date\names1
a:\Images\abc\year\month\date\names2
a:\Images\abc\year\month\date\names3 etc,.

每个文件夹中都有一个包含少量信息的 csv(abc.csv 每个文件夹中的常量名称)。

例如:

1 Orange USA
2 Apple England
3 Orange Australia
4 Orange Austria
5 Apple India

在这里,我想计算 CSV 中橙子、苹果、葡萄和甜瓜的数量 不同的文件夹。

我期待类似的输出:

Link    Oranges Apples  Grapes  Melon

\names1 5846    2000    85215   586

\Names2 4521    1542    45852   125

\Names3 365     4856    25415   548

请帮忙...

最佳答案

试试这个代码。它将打开列 (1) 中列出的每个文件夹中包含的文件 abc.csv,计算项目数,然后关闭文件并继续。

Option Explicit

Sub CountApples()
Dim wbk As Workbook, sht As Worksheet, wbkTemp As Workbook, lLoop As Long, lLastRow As Long

'turn off updates to speed up code execution
With Application
    .ScreenUpdating = False
    .EnableEvents = False
    .Calculation = xlCalculationManual
End With

Set sht = ActiveSheet

lLastRow = sht.Cells(sht.Rows.Count, 1).End(xlUp).Row

For lLoop = 2 To lLastRow
    Set wbkTemp = Workbooks.Open(sht.Cells(lLoop, 1) & "\abc.csv")

    sht.Cells(lLoop, 2).Value = Application.WorksheetFunction.CountIf(wbkTemp.Sheets(1).Columns(1), "Oranges")
    sht.Cells(lLoop, 3).Value = Application.WorksheetFunction.CountIf(wbkTemp.Sheets(1).Columns(1), "Apples")
    sht.Cells(lLoop, 4).Value = Application.WorksheetFunction.CountIf(wbkTemp.Sheets(1).Columns(1), "Grapes")
    sht.Cells(lLoop, 5).Value = Application.WorksheetFunction.CountIf(wbkTemp.Sheets(1).Columns(1), "Melon")

    wbkTemp.Close (False)
Next lLoop

With Application
    .ScreenUpdating = True
    .EnableEvents = True
    .Calculation = xlCalculationAutomatic
End With


End Sub

关于vba - 计算多个 csv 文件中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12867547/

相关文章:

vba - Excel VBA 删除相邻字段中的数据重叠

vba - SAS - 如何屏蔽双引号(例如 "")

vba - 在 VBA 中循环字符串的看似简单的任务

excel - VBA Range.Find 舍入负数的函数

Excel:如何从 VbScript 调用工作表模块中的函数

excel - 是否可以将 InStr() 与 Application.Vlookup() 结合使用?

excel - 使用VBA将单元格值从一个单元格复制到另一个单元格

excel - 出现额外的工作表

Excel VBA - 日期替换

正则表达式-忽略与模式匹配的常量字符串