Excel 自动化报表生成VBA

Excel 自动化报表生成VBA,excel,vba,Excel,Vba,我正在尝试自动生成报告,我必须从同一块地毯上的.txt文件中复制/粘贴数据,为此我使用窗口,因为在其他计算机中使用该路径效率低下。我遇到的错误: 我希望所有单元格的数据类型都是文本,以便进行转换 将日期转换为dd/mm/yyyy 它只修改某些文件,而不修改某些文件 我尝试了很多宏,但是我无法修复错误 Sub REP_DET_Report() myBook = ActiveWorkbook.Name Set nav = CreateObject("shell.application") fold

我正在尝试自动生成报告,我必须从同一块地毯上的.txt文件中复制/粘贴数据,为此我使用窗口,因为在其他计算机中使用该路径效率低下。我遇到的错误:

  • 我希望所有单元格的数据类型都是文本,以便进行转换 将日期转换为dd/mm/yyyy

  • 它只修改某些文件,而不修改某些文件

    我尝试了很多宏,但是我无法修复错误

    Sub REP_DET_Report()
    myBook = ActiveWorkbook.Name
    Set nav = CreateObject("shell.application")
    folder = nav.browseforfolder(0, "PICK FOLDER", 0, "c:\").items.Item.Path
    ChDir folder & "\"
    file = Dir("*.txt")
    Do While file <> ""
    Workbooks.OpenText file, origin:=xlWindows, startrow:=1, DataType:=xlDelimited
    
    
    Dim objRange1 As Range
    'Set up the ranges
    Set objRange1 = Range("A1:A1048576")
    
    'Do the first parse
    objRange1.TextToColumns _
    Destination:=Range("A1"), _
    FieldInfo:=Array(Array(1, xlTextFormat), Array(2, xlTextFormat), Array(3, xlTextFormat), Array(4, xlTextFormat), Array(5, xlTextFormat), Array(6, xlTextFormat), Array(7, xlTextFormat), Array(8, xlTextFormat), Array(9, xlTextFormat), Array(10, xlTextFormat)), _
    DataType:=xlDelimited, _
    Tab:=False, _
    Semicolon:=False, _
    Comma:=False, _
    Space:=False, _
    other:=True, _
    OtherChar:="|"
    
    other = ActiveWorkbook.Name
    ActiveSheet.Copy before:=Workbooks(myBook).Sheets(1)
    Workbooks(other).Close False
    file = Dir()
    Loop
    End Sub
    
    Sub REP_DET_报告()
    myBook=ActiveWorkbook.Name
    Set nav=CreateObject(“shell.application”)
    folder=nav.browseforfolder(0,“拾取文件夹”,0,“c:\”)。items.Item.Path
    ChDir文件夹&“\”
    file=Dir(“*.txt”)
    文件“”时执行此操作
    Workbooks.OpenText文件,源代码:=xlWindows,起始代码:=1,数据类型:=xlDelimited
    Dim objRange1作为范围
    "设置靶场,
    设置对象范围1=范围(“A1:A1048576”)
    '进行第一次分析
    objRange1.TextToColumns_
    目的地:=范围(“A1”)_
    FieldInfo:=数组(数组(1,xlTextFormat)、数组(2,xlTextFormat)、数组(3,xlTextFormat)、数组(4,xlTextFormat)、数组(5,xlTextFormat)、数组(6,xlTextFormat)、数组(7,xlTextFormat)、数组(8,xlTextFormat)、数组(9,xlTextFormat)、数组(10,xlTextFormat))_
    数据类型:=xlDelimited_
    Tab:=假_
    分号:=False_
    逗号:=假_
    空格:=假_
    其他:=正确_
    OtherChar:=“|”
    other=ActiveWorkbook.Name
    ActiveSheet.Copy before:=工作簿(myBook).Sheets(1)
    工作簿(其他)。关闭False
    file=Dir()
    环
    端接头
    

错误继续下一步
忽略任何错误-这使我们无法找出实际问题所在。^去掉这个,然后请将您的问题限制在一个问题上,谢谢。@BigBen已经回答了这个问题out@TimWilliams我把它拿了出来,然后发生了什么?