在Excel中不打开多个文件进行统计?

来源:百度知道 编辑:UC知道 时间:2024/05/30 11:35:22
我有多个(成百上千个)Excel的调查问卷文件,存在同一文件夹中,比如都在D:\问卷文件夹中,问卷采用Excel的问卷工作表中,问卷的答案形式为ABCD选择,比如选择的答案放在A1,A2,A3...,现在要统计出A1出有多少人选择A,多少个B...,A2出多少A,多少B...
请问如何利用VBA在一张表中统计出所有结果???多谢多谢

Sub 统计答案()
x = Dir("D:\DIR\*.xls") '假设文件在D:\dir目录下
Do While x <> ""
For i = 1 To 100 '假设有100道题目,答案存放在A1:A100中。
Cells(i, 5).Formula = "='D:\DIR\[" & x & "]sheet1'!A" & i '将各文件的sheet1工作表的A列单元格的值用公式提取到当前工作表E列对应单元格
T = Cells(i, 5)
If InStr(1, T, "A") > 0 Then Cells(i, 1) = Cells(i, 1) + 1 '检查答案中是否包含字母A,如果包含则让A列单元格中的数值增加1
If InStr(1, T, "B") > 0 Then Cells(i, 2) = Cells(i, 2) + 1 '存放答案B的累计数,下同。
If InStr(1, T, "C") > 0 Then Cells(i, 3) = Cells(i, 3) + 1
If InStr(1, T, "D") > 0 Then Cells(i, 4) = Cells(i, 4) + 1
Next i
x = Dir
Loop
Columns(5).Delete '删除临时使用的数据桥E列
End Sub