a245155090 2021-04-09 21:31 采纳率: 33.3%
浏览 832
已采纳

vba怎么批量提取很多个工作簿中固定列的某个数据,统计他的数量然后汇总到一个新表中?

本人VBA初学,不知道这个要求能不能用vba实现

有几百个同格式的工作簿,每天还在增加,里面只有一张表,表的格式都是固定的,需要提取表中B列某个数据的数量 然后汇总到一个新表中,每个表中B列的行数不等,基本都在几百上千行

表一  B列                       表二  B列                       表三    B列 

          PASS                            PASS                                 PASS

          PASS                           dead                                   PASS

          dead                            dead                                     PASS

          DLD dead                   DLD dead                          dead

需要汇总的新表格式

     表名          PASS    dead    DLD dead

      表一          2             1                 1

     表二          1              2                 1

     表三          3              1                 0

 我不知道怎么实现,不知道这个难不难,有没有大哥给串代码

 

 

  • 写回答

7条回答 默认 最新

  • leizzz 2021-04-10 10:41
    关注

    如果写VBS:
    Sub a()
        Dim fso
        Dim fld
        Dim fil
        Dim xls
        Dim bok
        Dim sht
        Dim i
        
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set fld = fso.GetFolder("C:\Users\king\Documents\")
        Set xls = CreateObject("Excel.Application")
        
        i = 1
        For Each fil In fld.Files
            If LCase(Right(fil.Name, 4)) = ".xls" Or LCase(Right(fil.Name, 5)) = ".xlsx" Then
                Debug.Print (fil.Name)
                i = i + 1
                Set bok = xls.Workbooks.Open(fil.Path, ReadOnly = True)
                Set sht = bok.Sheets(1)
                Sheet1.Cells(i, 1).Value = fil.Name
                Sheet1.Cells(i, 2).Value = sht.Evaluate("=COUNTIF(B:B,""PASS"")")
                Sheet1.Cells(i, 3).Value = sht.Evaluate("=COUNTIF(B:B,""dead"")")
                Sheet1.Cells(i, 4).Value = sht.Evaluate("=COUNTIF(B:B,""DLD dead"")")
                bok.Close
            End If
        Next
    End Sub
     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 我这模型写的不对吗?为什么lingo解出来的下面影子价格这一溜少一个变量
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波