请教一下Excel中批量读取TXT的问题

请教一下Excel中批量读取TXT的问题,第1张

如图:

windows按开始键,搜索程序和文件的地方输入:CMD,回车后出现上面的图

假设你的TXT文件在d:盘的1目录下,依次输入:

d:回车

cd\回车(这一步是回到根目录D:)

CD 1回车(CD和1之间有一个空格)

copy TXT aaaTXT回车

这样就会把所有的TXT文件都加到一个文件aaaTXT了,你再用EXECL导入AAATXT文件,整理一下,大功告成,试试吧。

中MD 1我是建了一个1的子目录,请忽视。

用宏实现,下例是vba读取文本文件,具体单元格读取什么内容看你的条件了

Sub Workbook_Open()

Dim address As String

address = ThisWorkbookPath & "\Tmrecordtxt"

Open address For Input As #1

Do While Not EOF(1)

Line Input #1, LineData

Sheets("Temp")Cells(1, 1) = Sheets("Temp")Cells(1, 1) & LineData

Loop

Close #1

End Sub

可以用Word打开txt文件,然后选中全部数据,执行 菜单 “表格”-->转换-->文本转换成表格,在对话框中,列数设置为6 确定后,再将整个表格复制到Excel中。

在Excel中再使用菜单“数据”-->“分列”的功能,对数据进行处理。

用一个循环就搞定了。

Sub save2Txt()

Dim f As String

Dim BigString As String

Range("C1:F9")Select

BigString = ""

For Each r In Selection

BigString = BigString & " " & rValue

Next r

f = ThisWorkbookPath & "\atxt"

Open f For Output As #1

Write #1, BigString

Close #1

End Sub

解决这个问题可以分两步走。

1、打开Excel表,数据——导入外部数据——导入数据,文件类型选择文本文件,选择文件后确定。输入表格后,如果数列分别存在各自单元格则完成,否则利用“数据——分列”进行处理。

2、将两行合并为一行,可以采用宏,或函数。由于数据并不很多,可以用函数。

函数:

(1)将64行、16列数据放在工作表中,左角第一个数据放在A1单元格,依次排列。为了视图方便,在右边间隔一列。在R1单元格输入下列函数:

=IF(COLUMN()>29,INDIRECT(ADDRESS(ROW()2,COLUMN()-29)),INDIRECT(ADDRESS(ROW()2-1,COLUMN()-17)))

解释:数据共16列,空1列则为17列,从18列到19列输入奇数列12个数字,row()2-1为奇数;19列以后为偶数列。

(2) 复制函数,从R1至AS1单元格,然后向下拖动到AS32单元格。

(3)将函数计算结果复制——选择性粘贴——数值,重新粘贴取消公式,最后就可以按要求复制到其它需要的地方了。

可以使用如下的代码,复制如下代码到VBA模块中运行即可。

如下代码代表4行4列,如果其余行或列数则可更改相应的数字。

具体步骤如下:

打开office excel;

Alt+F11打开VBA编辑器;

复制如下代码到模块中;

F5运行该模块;

按照提示进行如下步骤即可。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

Sub xxx()

Dim myFile As String

Dim myText As String

Dim myString As String

Dim i As Single

With ApplicationFileDialog(msoFileDialogFolderPicker)

Show

AllowMultiSelect = False

myFile = SelectedItems(1)

End With

myText = Dir(myFile & "\" & "txt")

Do While Len(myText) <> 0

Open myFile & "\" & myText For Input As #1

myText = Split(Split(VBAStrConv(InputB(LOF(1), 1), vbUnicode), Chr(10))(3), vbTab)(3) '4行4列,如果其余行或列数则更改相应的数字

DebugPrint myText

Close

myText = Dir

Loop

以上就是关于请教一下Excel中批量读取TXT的问题全部的内容,包括:请教一下Excel中批量读取TXT的问题、怎样在EXCEL单元格中引用TXT文件中部分内容,(因为要不同的单元格提取不同TXT文件的内容)、如何用excel按条件来读取txt文件中的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9702799.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存