|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
大神们,小白又遇到问题了,这次是编写一个vba程序,主要功能是将同事导出的文件在excel中用文本文件的形式打开,然后自动分割后以该文件的%后面的后5位字符作为文件名保存
文件是类似于下面这样的
%
O0005fafeafgweer52352563472363467547568u6757978903745623463463%
O0006gergsrgert34534534dfbdfyhew634yerbhdfshberyeryhbdfbnsdtgwerdfnaerty3wefvert6234yfyuj67EDGvabtfQ%
O0013VBESTERTYERBHDFHRTTY345WERGERT34754U8FGBHSDR34Y6GYERH547YRTHBY547856I9Y73476%
O0009VSDTGWERGSDFHN54E654UJHNRTGFMNDRTUY7RDF NBXRTYHRTN XRHBWEBHRTDUY54U8UHBE DRF
当然涉及到数据更多,然后有的可能是%后面是回车再加数据的
然后需要我做的是这样的状态
- Private Sub CommandButton3_Click()
-
- Dim TextFilePath As String
- Dim TextFile As Integer
- Dim FileContent As String
- Dim FileLines() As String
- Dim SplitLine() As String
- Dim i As Long
-
- '获取要导入的文件路径
- TextFilePath = Cells(1, 2)
-
- '打开文件
- TextFile = FreeFile
- Open TextFilePath For Input As TextFile
-
- '读取文件内容
- FileContent = Input(LOF(TextFile), TextFile)
-
- '关闭文件
- Close TextFile
-
- '以%为分隔符拆分文件内容
- FileLines = Split(FileContent, Cells(3, 2))
-
- '逐行写入并保存文件
- For i = 0 To UBound(FileLines)
- '以%后面5个字符为文件名
- SplitLine = Split(FileLines(i), vbCrLf)
-
- Open Cells(2, 2) & Right(SplitLine(0), 5) & ".txt" For Output As TextFile
-
- Print #TextFile, FileLines(i)
-
- Close TextFile
- Next i
-
- '提示导入完成
- MsgBox "导入完成!"
-
- End Sub
复制代码
|
|