主题:【原创】问题已经解决:让获取的文件名自动递增啊--关于安捷伦气相的数据处理

浏览0 回复12 电梯直达
spit_out
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
重复的操作 希望能做成宏程序 谢谢 都在视频里了:http://pan.baidu.com/s/1mgmnGnQ
原来我获取文件名是这么写的:还可以复制粘贴
dim r_1,r_2,r_3 as string
r_1=inputbox("输入文件1路径")&“report.txt”
r_2=inputbox("输入文件2路径")&“report.txt”
......
现在文件越来越多了,但是文件夹是有规律的,如何让他们按步长为2的递增呢?


已经找到解决办法现在发布答案(不一定完美希望各位完善一下) 高手只要看前面就可以了,后面的四段with 可以不用看 都是导入数据的,不会用循环~~见笑了.
Sub Macro1()
'
' Macro1 Macro
' 宏由 LENOVO 录制,时间: 2015-2-25
'
' 快捷键: Ctrl+q
Sheets("Sheet2").Select
Dim rep_1, rep_2, rep_3, rep_4, front As String, fso As New FileSystemObject
If Workbooks.Count > 1 Then MsgBox "慢慢来,先关了其他的excel文件,再整": Exit Sub
'设置父文件夹路径
MsgBox "选择有信噪的标液1的文件夹!是文件夹哦"
With Application.FileDialog(msoFileDialogFolderPicker)
    .AllowMultiSelect = False
    .InitialFileName = "F:\data\"
    .Show
    If .SelectedItems.Count = 0 Then MsgBox "先不整了": Exit Sub
    rep_1 = .SelectedItems(1) & "\REPORT.txt"
    Worksheets("Sheet2").Range("J1").Value = .SelectedItems(1)
    front = fso.getparentfoldername(.SelectedItems(1))
    rep_2 = front & "\" & CStr((Mid(rep_1, Len(front) + 2, 11)) + 2) & ".D" & "\REPORT.txt"
    rep_3 = front & "\" & CStr((Mid(rep_2, Len(front) + 2, 11)) + 2) & ".D" & "\REPORT.txt"
    rep_4 = front & "\" & CStr((Mid(rep_3, Len(front) + 2, 11)) + 2) & ".D" & "\REPORT.txt"
End With
    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;" & rep_1, Destination:=Range("A1"))
        .Name = "Report1"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlOverwriteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 936
        .TextFileStartRow = 52
        .TextFileParseType = xlFixedWidth
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 9, 9, 9, 9, 9, 9, 1, 1, 9)
        .TextFileFixedColumnWidths = Array(8, 7, 4, 11, 7, 8, 8, 7, 9)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;" & rep_2, Destination:=Range("A10"))
        .Name = "Report2"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlOverwriteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 936
        .TextFileStartRow = 52
        .TextFileParseType = xlFixedWidth
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 9, 9, 9, 9, 9, 9, 1, 1, 9)
        .TextFileFixedColumnWidths = Array(8, 7, 4, 11, 7, 8, 8, 7, 9)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;" & rep_3, Destination:=Range("A20"))
        .Name = "Report3"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlOverwriteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 936
        .TextFileStartRow = 52
        .TextFileParseType = xlFixedWidth
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 9, 9, 9, 9, 9, 9, 1, 1, 9)
        .TextFileFixedColumnWidths = Array(8, 7, 4, 11, 7, 8, 8, 7, 9)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
  With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;" & rep_4, Destination:=Range("A28"))
        .Name = "Report4"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlOverwriteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 936
        .TextFileStartRow = 52
        .TextFileParseType = xlFixedWidth
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = True
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 9, 9, 9, 9, 9, 9, 1, 1, 9)
        .TextFileFixedColumnWidths = Array(8, 7, 4, 11, 7, 8, 8, 7, 9)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
Sheets("Sheet1").Select
MsgBox "处理完成!"
  End Sub
为您推荐
您可能想找: 气相色谱仪(GC) 询底价
专属顾问快速对接
立即提交
雨木霖
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
这么复杂的功能啊。。。
我们没用到过,一般都是在序列里一个一个设置的
化院天使
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
titi
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
zyl3367898
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
要获取文件名需要编宏程序吗?不是自动存在电脑上的吗?
spit_out
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
自动获取 不用手动输入啦。以后可以从自动生成的报告中直接获取大量的数据 比如信噪比 含量等等 直接打印输出。如果每天一两个数据当然可以从电脑里自己动手找,但是数据太多了上千个文件一个一个打开关闭,每天这样不崩溃吗?不过谢谢各位关注,已经取得了一些进展,基本半自动化了...继续优化中...希望大神指点
zyl3367898
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
秋醉虞阳
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
cainiao1
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
cainiao1
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
DeeperBlue
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
可否这样(并不按语法):

dim p_1, p_2, r_1,r_2,r_3 as string
dim i as integer

p_1=inputbox("输入文件1路径")
p_2=inputbox("输入文件2路径")

i=1

do while (condition is true)
  r_1=p_1 & i & “report.txt”
  r_2=p_2 & ( i+1)  &“report.txt”
  i=i+2
  ... ...
enddo
赞贴
0
收藏
0
拍砖
0
2015/10/2 17:39:00 Last edit by yangdeyuan
猜你喜欢最新推荐热门推荐更多推荐
品牌合作伙伴