Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
12
返回列表 发新帖
楼主: lhj323323

[已解决]谢谢放浪形骸 老师,文字处理

[复制链接]
发表于 2011-4-2 23:40 | 显示全部楼层    本楼为最佳答案   
本帖最后由 放浪形骸 于 2011-4-2 23:43 编辑
lhj323323 发表于 2011-4-2 23:13
回复 放浪形骸 的帖子

这是我到处找的关于对外部数据TXT文档提取的语句:


这个只是单纯地读入数据。
而且也不是一行一行地读的
我来改改吧。
  1. Private Sub CommandButton1_Click()
  2. Dim strLine As String
  3. Dim txtFile As String
  4. Dim txtOut As String
  5. Dim cChar As String * 1
  6. Application.DisplayAlerts = False
  7. txtFile = ThisWorkbook.Path & "\王守仁心学觅踪.txt"
  8. txtOut = ThisWorkbook.Path & "\OutPut.txt"
  9. Open txtFile For Input As #1
  10. Open txtOut For Output As #2
  11. Do Until EOF(1)

  12. Line Input #1, strLine
  13. cChar = Right(strLine, 1)
  14. Select Case cChar
  15.     Case ":", "。", "!", "”", ")":
  16.         Print #2, strLine & vbCrLf
  17.     Case Else:
  18.         Print #2, strLine;
  19. End Select
  20. Loop
  21. Close #1
  22. Close #2
  23. Application.DisplayAlerts = True
  24. End Sub

复制代码
把原文件和EXCEL文件放在同一个文件夹里。

但是这里还是有一个问题:
也就是每个篇章的标题它不会自动识别。
也就是最开始一段会是这样的结果:
良知的呼唤一、向内心开拓的成圣之路 1.少有凌云志 一心成圣贤 京城,一个深深的宅院里,一丛挺拔的翠竹前,只见一位青年正对着竹子凝神静思。这几天,他每天一早就来到这里做这个“功夫”,整整是第七天了。看他那专心致志的样子,像是非要从这不会说话的竹子中体悟出什么深奥动人的道理一样。这就是我们的“主人公”王守仁。

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
回复

使用道具 举报

 楼主| 发表于 2011-4-3 03:02 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2011-4-3 10:35 | 显示全部楼层
本帖最后由 lhj323323 于 2011-4-3 10:47 编辑

回复 放浪形骸 的帖子

老师:
我想把您写的下面这句进行修改,为什么程序会报错呢?
'txtFile = ThisWorkbook.Path & "\王守仁心学觅踪.txt"'这是指定的外部数据源的名称,适用范围不广
txtFile = ThisWorkbook.Path & "\*.txt"


方法2:
如果上一种不行,我想采用另一种办法,即让用户在Sheet1.[f24]单元格内输入外部数据(肯定是txt格式)的名称,但程序仍报错,说是文件未找到
    Dim aa$
   aa = Sheet1.[f24].Value
   txtFile = ThisWorkbook.Path & "\aa.txt"



回复

使用道具 举报

发表于 2011-4-3 18:09 | 显示全部楼层
lhj323323 发表于 2011-4-3 10:35
回复 放浪形骸 的帖子

老师:

方法一:因为这里是需要明确是什么文件,不能直接用通配符*的

回复

使用道具 举报

 楼主| 发表于 2011-4-3 20:15 | 显示全部楼层
回复 放浪形骸 的帖子

那是不是在方法一中,就不能用通配符了?

还有,在方法二中是问题能否有解决的办法 ?
回复

使用道具 举报

发表于 2011-4-3 20:37 | 显示全部楼层
lhj323323 发表于 2011-4-3 20:15
回复 放浪形骸 的帖子

那是不是在方法一中,就不能用通配符了?

方法一的话,如果你明确文件所在的目录的话,可以使用DIR函数来解决。
回复

使用道具 举报

 楼主| 发表于 2011-4-3 21:18 | 显示全部楼层
回复 放浪形骸 的帖子

方法一,目前已找到解决的办法了。谢谢您老师

方法二,能否通过用户在[首页]的指定单元格输入文件名称,用这样的方法来导入指定名称的外部数据呢?
回复

使用道具 举报

发表于 2011-4-3 21:59 | 显示全部楼层
lhj323323 发表于 2011-4-3 21:18
回复 放浪形骸 的帖子

方法一,目前已找到解决的办法了。谢谢您老师

你方法二的话用法有错误。
1。“\aa.txt”这样的话已经指定文件名是aa.txt
2。如果单元格里包含了文件后缀名的话
那么就是app.path & "\" & aa 就可以了。
如果不含有后缀名的话,那么就自己再加上".txt"就好了
回复

使用道具 举报

 楼主| 发表于 2011-4-3 22:17 | 显示全部楼层
回复 放浪形骸 的帖子

哦,明白了,谢谢您。
回复

使用道具 举报

发表于 2011-4-3 22:27 | 显示全部楼层
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-21 04:04 , Processed in 0.276740 second(s), 5 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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