ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
12
返回列表 发新帖
楼主: wdh540119878

[求助] 提取TXT文件内容到指定单元格

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-5-16 20:45 | 显示全部楼层
你这txt的内容是OCR出来的吗

TA的精华主题

TA的得分主题

发表于 2023-5-16 22:53 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
下面代码,执行时候把存放代码的文件和需要读取的txt文件放在同一个文件夹即可
  1. Sub 遍历文件夹()
  2.     Dim arr0(), arr1()
  3.     Dim arr
  4.     Dim bkName, pth, bkNames, i, k, k1, j
  5.     bkName = ThisWorkbook.Name
  6.     pth = ThisWorkbook.Path
  7.     bkNames = Dir(pth & "" & "*.*")
  8.     Do Until bkNames = ""
  9.         If bkNames <> bkName And bkNames Like "*.txt*" Then
  10.             i = i + 1
  11.             ReDim Preserve arr0(1 To i)
  12.             arr0(i) = bkNames
  13.         End If
  14.         bkNames = Dir
  15.     Loop
  16.     For k = 1 To UBound(arr0)
  17.         Dim objstream, strData
  18.         Dim Str$
  19.         Set objstream = CreateObject("ADODB.Stream")
  20.         objstream.Charset = "utf-8"
  21.         objstream.Open
  22.         objstream.LoadFromFile (ThisWorkbook.Path & "" & arr0(k))
  23.         strData = objstream.ReadText()
  24.         arr = Split(strData, vbCrLf)
  25.         Str = ""
  26.         For j = 0 To UBound(arr) - 1
  27.             Str = Str & arr(j)
  28.         Next
  29.         objstream.Close
  30.         Set objstream = Nothing
  31.         k1 = k1 + 1
  32.         ReDim Preserve arr1(1 To k1)
  33.         arr1(k1) = Str
  34.     Next
  35.     Range("r2:r" & UBound(arr1) + 1) = Application.Transpose(arr1)
  36. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2023-5-16 23:08 | 显示全部楼层
wps测试通过

提取txt文件内容代码.zip

56.09 KB, 下载次数: 25

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-5-17 00:01 | 显示全部楼层
你地铁图 发表于 2023-5-16 20:45
你这txt的内容是OCR出来的吗

是的,双层PDF提取出来的

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-5-17 00:07 | 显示全部楼层
gwjkkkkk 发表于 2023-5-16 20:44
我测试没问题啊,数据都提出来了,是不是WPS的关系 。。。。

明天我再试试装个office,手机上回复的

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-5-17 00:08 | 显示全部楼层

明天我试试。这会手机上回复呢,谢谢大哥了

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-5-17 00:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

用这个测试可以了 但是是把TXT得放到2012文件夹内,并不是说的放到放在同一个文件夹,能不能改成,本文件内含所有子文件夹内的TXT

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-5-17 00:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
gwjkkkkk 发表于 2023-5-16 20:44
我测试没问题啊,数据都提出来了,是不是WPS的关系 。。。。

感谢大哥,我说错了,是office报那个错,WPS可以正常运行,代码能不能改成本文件夹含子文件夹内的TXT,不用必须放到2012文件夹里面

TA的精华主题

TA的得分主题

发表于 2023-6-17 23:10 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

大神,我这边有个类似的,不过我是依次放入A列中的单元格中去,每个Txt文档对应一个单元格,希望大神给我写一个类似的vba代码,非常感谢~~~
4971737acdc1a999249d3b2de74cf66.jpg

测试---子文件夹所有的.zip

42.18 KB, 下载次数: 7

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

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-16 15:40 , Processed in 0.031475 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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