Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
楼主: zhxqer

[已解决]新手求助将execl的sheet1中的列A,C,E导出,并生成txt文件

[复制链接]
 楼主| 发表于 2013-6-21 17:54 | 显示全部楼层
hwc2ycy 发表于 2013-6-21 16:44

我表里有汉字,导出的TXT汉字都有双引号,怎么才能不带双引号,表里是既有汉字也有数值,请大神指导!
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
回复

使用道具 举报

发表于 2013-6-21 18:33 | 显示全部楼层
回复

使用道具 举报

发表于 2013-6-21 18:45 | 显示全部楼层
用PRINT语句不会有。
  1. Sub ACEToTXT()
  2.     Dim arr
  3.     Dim fileNO
  4.     Dim strFile$
  5.     Dim i As Long
  6.     On Error GoTo ErrorHandler:

  7.     strFile = ThisWorkbook.Path & Application.PathSeparator & Format(Now, "yyyymmddhhmm") & ".txt"
  8.     fileNO = FreeFile
  9.     Open strFile For Output Access Write As #fileNO
  10.     arr = ActiveSheet.UsedRange.Columns("a:e").Value
  11.     For i = 1 To UBound(arr)
  12.         Print #fileNO, arr(i, 1) & "," & arr(i, 3) & "," & arr(i, 5)
  13.     Next
  14.     Close #fileNO
  15.     MsgBox "文件导出到 " & strFile
  16.     Exit Sub
  17.    
  18. ErrorHandler:
  19.     MsgBox Err.Number & vbCrLf & _
  20.            Err.Description
  21.     Err.Clear
  22.     Close #fileNO
  23. End Sub
复制代码
回复

使用道具 举报

发表于 2013-6-21 18:48 | 显示全部楼层
用WRITE输出,日期会加#,字符串会加“
回复

使用道具 举报

 楼主| 发表于 2013-6-25 16:08 | 显示全部楼层
hwc2ycy 发表于 2013-6-21 18:48
用WRITE输出,日期会加#,字符串会加“

谢谢大神,还得麻烦您,print输出的数据小数点前的0被省略了!怎么能不省略0!
回复

使用道具 举报

发表于 2013-6-25 16:11 | 显示全部楼层
你的数据是几位啊,规范了没?
回复

使用道具 举报

 楼主| 发表于 2013-6-25 19:10 | 显示全部楼层
hwc2ycy 发表于 2013-6-25 16:11
你的数据是几位啊,规范了没?

数值是6位
回复

使用道具 举报

发表于 2013-6-25 19:15 | 显示全部楼层
带不带小数位呀?
回复

使用道具 举报

发表于 2013-6-25 19:20 | 显示全部楼层    本楼为最佳答案   
  1. Sub ACEToTXT()
  2.     Dim arr
  3.     Dim fileNO
  4.     Dim strFile$
  5.     Dim i As Long
  6.     On Error GoTo ErrorHandler:

  7.     strFile = ThisWorkbook.Path & Application.PathSeparator & Format(Now, "yyyymmddhhmm") & ".txt"
  8.     fileNO = FreeFile
  9.     Open strFile For Output Access Write As #fileNO
  10.     arr = ActiveSheet.UsedRange.Columns("a:e").Value
  11.     For i = 1 To UBound(arr)
  12.         Print #fileNO, IIf(IsNumeric(arr(i, 1)), Format(arr(i, 1), "000000"), arr(i, 1)) & "," & IIf(IsNumeric(arr(i, 3)), Format(arr(i, 3), "000000"), arr(i, 3)) & "," & IIf(IsNumeric(arr(i, 5)), Format(arr(i, 5), "000000"), arr(i, 5))
  13.     Next
  14.     Close #fileNO
  15.     MsgBox "文件导出到 " & strFile
  16.     Exit Sub
  17.    
  18. ErrorHandler:
  19.     MsgBox Err.Number & vbCrLf & _
  20.            Err.Description
  21.     Err.Clear
  22.     Close #fileNO
  23. End Sub
复制代码
回复

使用道具 举报

发表于 2013-6-29 10:24 | 显示全部楼层
人呢,结果如何了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-6 03:34 , Processed in 0.320242 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表