5 种将 TXT 文件转换为 Excel 的超实用方法

在日常办公中,许多系统导出的报告、日志和交易记录都是 TXT 格式。虽然文本文件便于存储和共享,但想要对纯文本进行数据分析、排序、筛选或套用公式,往往会让人感到无从下手。这就是为什么大多数人更倾向于将 TXT 文件转换为 Excel,以便更高效地管理和分析数据。

本文将为你详细介绍 5 种简单实用的转换方法,涵盖 Excel 内置导入工具、Python 自动化方案以及在线转换工具,助你轻松搞定从文本到可视化数据的转换。

目录

利用 Excel 数据选项卡导入 TXT 文件

我们首先从 Excel 的内置功能讲起。为了让不同格式之间的数据迁移更加顺畅,Excel 提供了强大的外部数据导入工具。这种方法不仅能精准导入 TXT 文件中的结构化数据,还能保留其原始布局,是公认最稳妥、最靠谱的文本转换方式之一。

具体操作步骤如下:

  • 第一步: 打开 Excel,点击顶部菜单栏的数据选项卡,依次选择获取数据 > 自文件 > 自文本/CSV,导入 TXT 文件。

导入 TXT 文件到 Excel 中

  • 第二步: 在弹出的预览窗口中,点击分隔符下拉菜单,检查数据是否根据逗号、制表符、空格或分号进行了正确分列。

选择文本文件使用的分隔符

  • 第三步: 预览无误后,点击右下角的加载按钮,将数据导入表格并保存文件即可。

提示: 如果文本中包含中文等非英文文本,导致预览窗口出现乱码,可以点击文件原始格式下拉菜单,将编码切换为 UTF-8GBK,可以解决大部分乱码问题。

  • 优点: 准确率极高,能有效防止乱码,且能轻松处理超大文件。
  • 缺点: 步骤比直接打开稍显繁琐。

直接用 Excel 打开文本文件并另存为

如果你的文本数据结构比较简单,且使用了清晰的分隔符,完全可以直接把源文件拖进 Excel 里。直接打开时,Excel 会启动内置的文本导入向导,自动将数据拆分到各个单元格中。对于格式规范的文本文件,这是最快的一种转换方式。

  • 第一步: 启动 Excel,点击文件 > 打开 > 浏览,将右下角的文件类型筛选器从所有 Excel 文件切换为所有文件 (.)

在 Excel 中打开 TXT 文件

  • 第二步: 双击你要转换的 TXT 文件,Excel 会自动触发文本导入向导。
  • 第三步: 选择分隔符号,点击下一步,勾选文本中所使用的分隔符(如制表符或空格),然后点击完成。

明确文本文件使用的分隔符

  • 第四步: 数据成功载入后,点击文件 > 另存为,选择目标文件夹,并将保存类型修改为 Excel 工作簿 (*.xlsx) 格式。

  • 优点: 简单快捷,无需前期准备。

  • 缺点: 如果文本包含特殊格式或复杂的数据类型,容易出现排版错乱。

推荐阅读:如何将 Excel 转换为 TXT 文本格式(4 种简单方法)

使用文本分列功能处理文本片段

有些时候,你并不需要转换一整个报告,可能只是想处理邮件或系统日志里的一小段数据。针对这种情况,直接复制 + 粘贴才是最省事的。你可以把需要的文本插入到 Excel 的某一列中,然后利用文本分列功能将其拆分,无需导入整个 TXT 文件。

  • 第一步: 复制文本文件中你需要的数据,直接粘贴到空白 Excel 工作表的任意单元格中,此处以 A1 为例。
  • 第二步: 选中 A 列数据,切换到数据选项卡,点击分列按钮。

使用分列功能分离 TXT 文本为单元格的值

  • 第三步: 在弹出的窗口中第一步中选择分隔符号,点击下一步。

  • 第四步: 勾选文件使用的分隔符,点击完成,文本就会自动分流到各个单元格中,最后保存即可。

  • 优点: 灵活高效,适合临时提取和处理局部数据。

  • 缺点: 无法用于处理大型文件或多个文档。

使用 Python 脚本批量转换 TXT 为 Excel

如果你每天都要面对几十上百个文本报告,纯手动操作显然不太现实。掌握如何使用 Python 将 TXT 文件转换为 Excel 可以帮你构建一条自动处理文件的流水线。在本章中,我们使用 Free Spire.XLS for Python 库,它是一个完全独立的组件,无需电脑安装 Microsoft Excel 就能通过代码创建、管理和转换 Excel 表格。借助其强大的工作簿操作功能,我们可以轻松识别 TXT 文件中的分隔符并实现批量转换。

使用该库批量转换文本文件的思路如下:

  • 第一步: 指定输入与输出的文件夹路径,代码会读取文本首行,自动识别逗号、空格或制表符等分隔符。
  • 第二步: 遍历文件夹以自动获取所有 .txt 文件,并生成对应的 .xlsx 目标文件名。
  • 第三步: 初始化 Workbook 对象,调用 LoadFromFile 方法将文本数据按行按列解析读入。
  • 第四步: 对指定的范围调用 AutoFitColumns() 方法以实现列宽自适应,最后保存文件。

以下是使用 Free Spire.XLS 自动读取并转换使用不同分隔符的多个文件的完整代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import os
from spire.xls import *

# 定义输入和输出文件夹路径
input_folder = "/input/txt files/"
output_folder = "/output/excel files/"

# 遍历并处理输入文件夹中的所有文本文件
for filename in os.listdir(input_folder):
if filename.endswith(".txt"):
txt_path = os.path.join(input_folder, filename)
excel_name = filename.replace(".txt", ".xlsx")
excel_path = os.path.join(output_folder, excel_name)

# 读取文本文件的第一行
with open(txt_path, 'r', encoding='utf-8') as f:
first_line = f.readline()

# 动态匹配分隔符:优先判断逗号,其次空格,默认使用制表符(\t)
current_delimiter = "," if "," in first_line else (" " if " " in first_line else "\t")

# 初始化工作簿并加载文本文件
workbook = Workbook()
workbook.LoadFromFile(txt_path, current_delimiter, 1, 1)

# 自动调整列宽以适应内容长度
sheet = workbook.Worksheets[0]
sheet.AllocatedRange.AutoFitColumns()

# 将结果保存为 Excel 文件
workbook.SaveToFile(excel_path, ExcelVersion.Version2016)
workbook.Dispose()
print(f"成功转换 ({'逗号' if current_delimiter==',' else '空格' if current_delimiter==' ' else '制表符'}): {filename} -> {excel_name}")

使用 Free Spire.XLS 批量转换 TXT 为 Excel

  • 优点: 自动化操作且无需打开 Excel,快速处理数百个文件,还能智能兼容不同的分隔符。
  • 缺点: 需要在电脑上配置 Python 运行环境。

使用在线转换工具快速转换文本文件

如果你使用临时设备、或者在手机上需要查看数据,且没有安装 Excel 软件,那么在线工具就是一个绝佳的应急选择。网页端转换工具随开随用,省时省力。

这里我们以 Convertio 为例,演示使用在线转换器的步骤:

  • 第一步: 在浏览器中打开 Convertio 的 TXT 转 XLSX 工具。

在线 TXT-to-Excel 转换器

  • 第二步: 点击按钮,从本地设备或网盘中上传需要转换的 TXT 文件。

  • 第三步: 点击转换按钮,稍等几秒钟待系统处理完毕,即可将生成的 Excel 文件下载到本地。

  • 优点: 纯网页端操作,无需安装任何软件,手机电脑通用。

  • 缺点: 无法进行细致的数据格式调整,通常有文件大小限制。此外,将含有敏感或隐私的数据上传到第三方服务器存在一定的安全风险。

5 种方法横向对比表

为了帮你快速找到最适合当下的处理方案,我们将上述 5 种方法根据适用场景、数据量限制和处理速度进行对比并最终形成下方表格:

转换方法 最佳适用场景 数据量限制 转换速度
数据选项卡导入 布局复杂、多语言的文本 极高 中等
直接打开 格式规范、结构简单的文本 中等 快速
文本分列 部分文本片段 快速
Python 脚本 文件批量转换 无限制 极快
在线转换工具 无法使用 Excel 时临时处理 快速

问题排查

在转换 TXT 文件的过程中,你可能会遇到一些格式上的小问题,参考下面的方法就能轻松搞定:

文本乱码

如果导入后发现原本的文字变成了乱码或特殊符号,这通常是因为文件编码不匹配。可以改用数据选项卡导入,在设置中尝试将文件原始格式切换为 Windows-1252UTF-8GBK 等,直到预览框里的文字显示正常再进行加载。

长数字变成了科学计数法

当一串长身份证号或订单号被读入时,Excel 默认会将其识别为数值并启用科学计数法。要避免这种情况,需要在导入向导中将该列的数据格式显式指定为文本,而不是默认的常规。如果数据已经加载到了工作表中,也可以参考相关教程将这些数字转换回文本格式以恢复完整显示。

总结

总的来说,将 TXT 文件转换为 Excel 并没有想象中那么困难。如果你只是偶尔处理单个文件,Excel 内置的导入工具和直接打开功能完全够用,而且还能对编码和分隔符进行调整。而如果你的财务软件、ERP 系统或日常业务需要每天导出大量的文本对账单、日志报表,那么使用 Python 自动化方案绝对能为你节省大量时间。根据你的实际需求挑选最合适的方法,轻松让杂乱无章的文本数据变成井井有条的 Excel 表格。

其它常见问题与解答

Excel 可以直接打开 TXT 文件吗?

可以。你可以直接通过 Excel 内的文件 > 打开直接读取 TXT 文件,也可以使用数据 > 自文本/CSV 进行导入。通常更推荐使用后者,因为导入向导能让你更精细地控制分隔符、文本编码和每列的数据类型。

为什么 TXT 文件放到 Excel 里全是乱码?

这主要是因为文件的源编码与 Excel 的默认读取编码冲突了。建议使用 Excel 的获取数据功能重新导入文件,并在源文件编码选项中尝试选择 UTF-8Windows-1252 或符合文件来源系统的其他编码,直到乱码恢复正常。

如何一次性将大量的 TXT 文件转换为 Excel?

面对多文件批量处理,使用代码自动化是最稳妥的选择。例如利用 Python 和 Free Spire.XLS 等组件编写一段简短的脚本,就能让程序自动遍历整个文件夹,把所有的文本文件一键转换为独立的 Excel 工作簿。

电脑没装 Excel,还能将 TXT 转成 Excel 吗?

当然可以。你可以直接使用 Convertio 等网页端在线转换工具,或者利用 Python 脚本在后台直接生成标准的 Excel 文件。不过在处理涉及公司机密或个人隐私的敏感数据时,尽量避免使用第三方在线上传工具。