使用VBA在工作簿文件夹中循环编码?

JC11

我有一个文件夹,其中包含许多具有相同格式的Excel文件。我修改了以下代码来确定日期并将其重新格式化,其中“ i”根据第2列的最后一行确定范围内的单元格数。

Sub Test()
   Dim i As Long
   i = Sheet1.Cells(Rows.Count, 2).End(xlUp).Row
   With Range("K3:K" & i)
        .Formula = "=DATE(A3,G3,H3)"
        .NumberFormat = "ddmmmyyyy"
   End With  
End Sub

我想在文件夹中的所有工作簿上执行此代码。我在stackoverflow上发现了以下问题:

用于遍历指定文件夹中的所有excel文件并从特定单元格提取数据的代码

它不会遍历我的所有文件,并且仅适用于我打开的第一个excel文件。如何在文件夹中的所有工作簿中循环这段代码?以下是我到目前为止的内容。

Sub Test()
Dim lCount As Long
Dim wbResults As Workbook
Dim wbCodeBook As Workbook
Dim i As Long

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.EnableEvents = False

On Error Resume Next
    Set wbCodeBook = ThisWorkbook
        With Application.FileSearch
            .NewSearch

            .LookIn = "C:\Test"
            .FileType = msoFileTypeExcelWorkbooks

                If .Execute > 0 Then
                    For lCount = 1 To .FoundFiles.Count

                        Set wbResults = Workbooks.Open(Filename:=.FoundFiles(lCount), UpdateLinks:=0)

   i = wbResults.Worksheets("Sheet1").Cells(wbResults.Worksheets("Sheet1").Rows.Count, 2).End(xlUp).Row
   With wbResults.Worksheets("Sheet1").Range("K3:K" & i)
        .Formula = "=DATE(A3,G3,H3)"
        .NumberFormat = "ddmmmyyyy"
   End With

                        wbResults.Close SaveChanges:=False
                    Next lCount
                End If
        End With
On Error GoTo 0
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Application.EnableEvents = True
End Sub
德米特里·帕夫利夫(Dmitry Pavliv)

Application.FileSearchExcel 2007和更高版本不支持。尝试以下代码(用于循环浏览文件夹中文件的代码来自@mehow的网站

Sub PrintFilesNames()
    Dim file As String
    Dim wbResults As Workbook
    Dim i As Long
    Dim myPath As String

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    myPath = "D:\" ' note, path ends with back slash

    file = Dir$(myPath & "*.xls*")

    While (Len(file) > 0)
        Set wbResults = Workbooks.Open(Filename:=myPath & file, UpdateLinks:=0)

        With wbResults.Worksheets(Split(file, ".")(0))
            i = .Cells(.Rows.Count, 2).End(xlUp).Row
            With .Range("K3:K" & i)
                 .Formula = "=DATE(A3,G3,H3)"
                 .NumberFormat = "ddmmmyyyy"
            End With
        End With

        wbResults.Close SaveChanges:=True
        'get next file
        file = Dir
    Wend

    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Excel VBA - 遍历文件夹中的文件,复制范围,粘贴到此工作簿中

来自分类Dev

VBA-尝试打开文件夹中的所有工作簿

来自分类Dev

Excel工作簿的VBA循环文件夹,并删除除一张纸外的所有文件

来自分类Dev

从文件夹中的所有工作簿导入数据

来自分类Dev

循环浏览文件夹,并为每个工作簿副本将一个范围粘贴到静态工作簿

来自分类Dev

将文件夹中的特定文件加载到工作簿中的不同工作表

来自分类Dev

如何遍历文件夹内所有工作簿中的所有工作表

来自分类Dev

将一个工作簿中的多张工作表保存到单个文件夹

来自分类Dev

VBA循环遍历文件夹中的每个文件

来自分类Dev

循环浏览存储在文件夹中的.xml文件,并使用VBA对其进行格式化

来自分类Dev

尝试将不同文件夹中的多个工作簿合并为一个主文件夹

来自分类Dev

将Excel文件工作簿合并到一个文件夹中

来自分类Dev

如何将输出文件存储在与原始工作簿相同的文件夹中

来自分类Dev

通过单个工作簿运行文件夹中的所有文件

来自分类Dev

VBA代码循环遍历Outlook中的每个文件夹和子文件夹

来自分类Dev

根据更改的名称从同一文件夹中的工作簿导入数据

来自分类Dev

从工作簿复制范围(无文件夹路径版本)

来自分类Dev

将工作表批量重命名为特定文件夹中的工作簿(文件)名称

来自分类Dev

VBA 循环遍历文件夹和子文件夹以查找特定工作表,然后复制并粘贴某些数据

来自分类Dev

文件夹路径中的编码问题

来自分类Dev

使用vba在特定文件夹中的特定文件类型

来自分类Dev

使用VBA删除FTP文件夹中的文件和文件夹

来自分类Dev

将文件夹中多个工作簿中的数据复制到一个工作簿中,仅粘贴特殊值

来自分类Dev

如何使用VBA用户窗体循环浏览工作簿中的多个工作表

来自分类Dev

使用循环在主文件夹中rar多个子文件夹

来自分类Dev

在“我的文档”中创建一个文件夹,然后将工作簿保存到该文件夹中

来自分类Dev

如何使用 Excel VBA 从使用文件浏览器选择的工作簿中复制工作表?

来自分类Dev

循环导入csv文件的文件夹中的额外的空白工作表

来自分类Dev

VBA遍历文件夹查找工作表将其打开,然后将所有选项卡移至另一个工作簿

Related 相关文章

  1. 1

    Excel VBA - 遍历文件夹中的文件,复制范围,粘贴到此工作簿中

  2. 2

    VBA-尝试打开文件夹中的所有工作簿

  3. 3

    Excel工作簿的VBA循环文件夹,并删除除一张纸外的所有文件

  4. 4

    从文件夹中的所有工作簿导入数据

  5. 5

    循环浏览文件夹,并为每个工作簿副本将一个范围粘贴到静态工作簿

  6. 6

    将文件夹中的特定文件加载到工作簿中的不同工作表

  7. 7

    如何遍历文件夹内所有工作簿中的所有工作表

  8. 8

    将一个工作簿中的多张工作表保存到单个文件夹

  9. 9

    VBA循环遍历文件夹中的每个文件

  10. 10

    循环浏览存储在文件夹中的.xml文件,并使用VBA对其进行格式化

  11. 11

    尝试将不同文件夹中的多个工作簿合并为一个主文件夹

  12. 12

    将Excel文件工作簿合并到一个文件夹中

  13. 13

    如何将输出文件存储在与原始工作簿相同的文件夹中

  14. 14

    通过单个工作簿运行文件夹中的所有文件

  15. 15

    VBA代码循环遍历Outlook中的每个文件夹和子文件夹

  16. 16

    根据更改的名称从同一文件夹中的工作簿导入数据

  17. 17

    从工作簿复制范围(无文件夹路径版本)

  18. 18

    将工作表批量重命名为特定文件夹中的工作簿(文件)名称

  19. 19

    VBA 循环遍历文件夹和子文件夹以查找特定工作表,然后复制并粘贴某些数据

  20. 20

    文件夹路径中的编码问题

  21. 21

    使用vba在特定文件夹中的特定文件类型

  22. 22

    使用VBA删除FTP文件夹中的文件和文件夹

  23. 23

    将文件夹中多个工作簿中的数据复制到一个工作簿中,仅粘贴特殊值

  24. 24

    如何使用VBA用户窗体循环浏览工作簿中的多个工作表

  25. 25

    使用循环在主文件夹中rar多个子文件夹

  26. 26

    在“我的文档”中创建一个文件夹,然后将工作簿保存到该文件夹中

  27. 27

    如何使用 Excel VBA 从使用文件浏览器选择的工作簿中复制工作表?

  28. 28

    循环导入csv文件的文件夹中的额外的空白工作表

  29. 29

    VBA遍历文件夹查找工作表将其打开,然后将所有选项卡移至另一个工作簿

热门标签

归档