一个文件夹里有多个excel file,每个excel file里有多个worksheet,怎样用VBA将这个文件夹里的所有excel file的所有worksheet读完?
具体到每个worksheet,怎样判断这个worksheet读完?有类似EOF的函数吗?

解决方案 »

  1.   

    用DIR命令取得所有EXCEL文件名 分别打开每个EXCEL,循环每个worksheet,读 
    用worksheets.count来确定worksheet数量 -------------------------------------------------------- 
    EXCEL VBA 解决方案群 69449647 让你的Excel更精彩 让你的工作更轻松
      

  2.   

    楼主参考一下这段代码:
    Sub PrcAllFile()
        Dim strFileName$, strPath$
        strPath = "E:\Temp"     '你要读的路径
        If (Right$(strPath, 1) = "\") Then
            strFileName = strPath & "*.xls"
        Else
            strFileName = strPath & "\*.xls"
        End If
        strFileName = Dir$(strFileName)
        While (Len(strFileName) > 0)
            '这个循环可以把文件逐个列出
            'Debug.Print strFileName
            '***********************
            '你自己在这里写对文件打开、读取 等处理代码
            '***********************
            strFileName = Dir$()
        Wend
    End Sub
      

  3.   

    一个一个读 如果EXCEL  工作表里数据多会很慢...
      

  4.   

    采用common dialog,将这个文件夹里面的所有的xls文件路径返回给一个listbox.然后通过循环一个一个的打开。这样你觉得怎么样?
      

  5.   

    对于worksheet.
    不知可否采用worksheets.count来返回个数,之后再循环worksheets.item