![跟李锐学Excel数据分析](https://wfqqreader-1252317822.image.myqcloud.com/cover/480/41151480/b_41151480.jpg)
2.1 TXT文件中的数据,如何批量导入Excel
在实际工作中,很多平台和系统导出的数据都是TXT格式的,那么我们就从文本文件数据的导入开始介绍吧。
为了能游刃有余地应对各种情况,下面结合4个案例展开介绍。
2.1.1 常规文本文件数据的导入
需要导入的文本文件如图2-1所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_30_0_m.jpg?sign=1739282022-9D3J1TLa2ESmFoGN7I9nxyd0mHrgKRgq-0-69e3c01e3f1c4428ea2bff5e28aa9f62)
图2-1
要在Excel中导入文本文件中的数据,有两种方法,一种是利用文本导入工具,另一种是借助Power Query工具,前者是Excel各个版本通用的方法,后者是Excel 2016、Excel 2019和Office 365版本的内置功能,如果使用的是Excel 2013或Excel 2010,需要从微软公司官网下载并安装Power Query插件。
下面就这两种方法,分别展开介绍。
■ 方法一:利用文本导入工具导入
在Excel 2019版本中,文本导入工具位于“数据”选项卡下面的“获取外部数据”组中,如图2-2所示。我们可以调用此工具进行文本数据的导入,方法如下。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_31_0_m.jpg?sign=1739282022-JUkAFxacAcVXdVu7GWUtg2C5Hk6qMEd0-0-86fdc851367365d39cc60d2cba6314d3)
图2-2
01 打开要放置文本数据的Excel工作簿,单击A1单元格,然后单击“数据”选项卡下的“自文本”按钮,弹出“导入文本文件”对话框,选择文本文件所在位置,单击“导入”按钮,如图2-3所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_31_1_l.jpg?sign=1739282022-FBXShrbibU7ROd51doRaFwdhsEm6rU0l-0-95c4a8597a10193650083b8c0d6684e4)
图2-3
02 在文本导入向导的第1步中,按图2-4所示步骤操作。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_32_0_m.jpg?sign=1739282022-Qivffr8RTyCktLUmA5PueXxtUFQx1pJR-0-98e76bbb31cf11c534ae6937ddf59245)
图2-4
03 进入文本导入向导的第2步,按图2-5所示步骤操作。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_32_1_m.jpg?sign=1739282022-QBnfvoo9kmKVExnc4MDvFcmGvp11lJCF-0-160ca930a597aba17faf68e0a2aa6eef)
图2-5
04 进入文本导入向导的第3步,按图2-6所示步骤操作。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_33_0_m.jpg?sign=1739282022-mjoXDmQyUwReH1ZcNr4fN3jC30mBECfK-0-2878c8a7eec2f4d91af790d1fd8b4a47)
图2-6
05 完成文本导入的操作后,设置数据的放置位置,如图2-7所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_33_1_m.jpg?sign=1739282022-xcUu6A6dVIcJSaC0X4FExLbWSJ1ktULt-0-27a906ac1cd7cb8a6bf18a72487bee97)
图2-7
06 将数据导入Excel后的效果如图2-8所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_34_0_m.jpg?sign=1739282022-KCLjtii5GJWRkh9VArsxeU0zB7x3EEeY-0-f49af807b8108c5acc1832a791d935dc)
图2-8
■ 方法二:借助Power Query工具导入。
01 单击“数据”选项卡下的“新建查询”按钮→“从文件”→“从文本”,如图2-9所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_34_1_m.jpg?sign=1739282022-h2pI5vnJnER8sIum9ROvstuat17EKUzi-0-0fee61e2026052ff859bd587e212ffb8)
图2-9
02 在弹出的对话框中选择要导入的文本文件所在位置,单击“打开”按钮。
03 在弹出的Power Query导入界面中,按图2-10所示步骤操作,加载数据。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_35_0_m.jpg?sign=1739282022-B8Q6UmcUnbBI4A9OuSUbwPKZE6xxu0K7-0-b483088fa31e35e75ba8f039500e2221)
图2-10
04 加载数据后的效果如图2-11所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_35_1_l.jpg?sign=1739282022-jY9ddt8ALiZ2QV9shhKhkwdbbL1ORXdM-0-2300f45c935f653b24ee13c92c1fd9be)
图2-11
你会发现,Excel默认将数据创建为超级表而非普通区域。
虽然以上两种方法都可以导入文本文件中的数据,但是显然方法二(借助Power Query导入数据)更加快捷。
不仅如此,当文本文件中的数据变更或向其中追加新的数据时,使用方法二导入Excel中的结果还支持同步更新,仅需单击“刷新”按钮即可,如图2-12所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_36_0_l.jpg?sign=1739282022-cFWIP4Zss1ouQ9RGyo1SQs5Lr2PNs6AR-0-a26eba272af457e68f7a690ac0736221)
图2-12
小结
推荐使用Excel 2016、Excel 2019或Office 365版本的用户优先使用Power Query导入文本文件中的数据,低版本用户使用方法一导入数据。
2.1.2 身份证号码等长文本数据的导入
除了常规的数据,实际工作中还可能遇到一些特殊数据,如身份证号码或银行账号等位数较多的数字,这时如果还按照上一小节介绍的步骤导入,会导致部分数据丢失。
下面结合一个案例说明关键步骤的设置方法。
现在有大量18位数字的身份证号码需要导入Excel,由于篇幅有限,仅展示前10行数据,如图2-13所示(已对身份证号码进行脱敏处理)。
由于身份证号码为18位数字,使用常规方法进行导入时,Excel默认只保留15位数字,这样会导致所有身份证号码的后3位数字变为0,如图2-14所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_36_2_m.jpg?sign=1739282022-eqpAKLOgShPjde4w4rq2o0Ew6HzZaRoS-0-36cbb8ffe9dcab57fb4445862a0c6c45)
图2-13
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_36_3_m.jpg?sign=1739282022-FIDra7zzvgymGvV0wUpNDeplzFoegIwB-0-d5f8bbe6df0026b023d123899a2b742c)
图2-14
为了避免这种情况的发生,需要在导入数据时指定身份证号码列按文本格式导入,下面分两种方法介绍关键的设置步骤。
■ 方法一:利用文本导入工具导入
01 参照2.1.1小节图2-3~图2-6所示的操作,在文本导入向导第3步对应的对话框中选中身份证号码所在的列,将其设置为文本格式,单击“完成”按钮,如图2-15所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_37_0_m.jpg?sign=1739282022-P3wQoeGFHztCh7ef0JyqaHu60GzrqL0I-0-18e705bb405457aed1129e2f52d36e6a)
图2-15
02 这样设置后才能完整地导入身份证号码,如图2-16所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_37_1_m.jpg?sign=1739282022-sUTrU4NO8j1KYsX9wEd75HJrEty2xMsi-0-dc344cbd1a10a4d1bb2f757e9533accd)
图2-16
■ 方法二:借助Po wer Query工具导入
01 参照2.1.1小节图2-9所示的操作,进入Power Query导入界面后,可见身份证号码列的数字变为科学记数法显示,所以这时不能直接单击“加载”按钮,而要单击“转换数据”按钮,如图2-17所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_38_0_m.jpg?sign=1739282022-3ZH5YtDo4vfRDCfVAruYVpilrFq0gjIe-0-4d84b741ba38d1a57de86782e5483cd8)
图2-17
02 进入Power Query编辑器后,界面如图2-18所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_38_1_l.jpg?sign=1739282022-CauIVbcpyBB5SI2x7NFsZWvRsIzYX0nU-0-134e064592c5429374adfbe52773bb77)
图2-18
03 选中身份证号码所在的列,将其转换为文本格式,如图2-19所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_39_0_l.jpg?sign=1739282022-4O7O81lhPhaSa4xWxepZ9wetivD403vz-0-be65e7c37fb90e4db962e8d3721a15d7)
图2-19
04 在弹出的对话框中单击“替换当前转换”按钮,如图2-20所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_39_3_m.jpg?sign=1739282022-CDOpsBbFQGiQGmlV2x5TtAdxcDSva8t9-0-73af688182376b7c4fa3ab2eab454a5a)
图2-20
05 转换成功后,即可完整显示18位身份证号码,单击“关闭并上载”按钮,将Power Query中的转换结果导入Excel中,如图2-21所示。
06 将数据导入Excel中的结果如图2-22所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_39_1_m.jpg?sign=1739282022-7vCur7tUHyDx6gB67ziJdUWDzfTZEmjY-0-6359979b9730b9ff651643beb9b32b36)
图2-21
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_39_2_m.jpg?sign=1739282022-SN8ElEpwUcgQbXiE6oQI5WwPpi9nsn9x-0-3dd17cecd6ae0b17e2d66a188856adad)
图2-22
Excel中的这个结果同样也是支持跟随数据源刷新的,当文本文件中的数据源变动后,在Excel中单击“设计”选项卡下的“刷新”按钮即可同步更新。
2.1.3 从十几个文本字段中删除部分字段再导入Excel
前面两个案例都是将文本文件中所有字段数据导入Excel,实际工作中有时我们只需要数据中的一部分字段,所以可以从数据中删除部分字段再导入。
原始文本文件如图2-23所示。其中的“退款额”和“退货量”无须导入Excel。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_40_0_l.jpg?sign=1739282022-ZfBTC5GTeSjAF4F11HyE0ExhuYeeAtpU-0-e5bde9f1078b433ab87a03a4650aa8a9)
图2-23
下面依然分两种方法展开介绍。
■ 方法一:利用文本导入工具导入
由于前面已经介绍过文本导入工具,所以这里重复的步骤不赘述。
01 参照2.1.1小节图2-3~图2-6所示的操作,在文本导入向导第3步对应的对话框中,依次选中无须导入的字段所在的列,选中“不导入此列(跳过)”单选项,单击“完成”按钮,如图2-24所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_40_1_m.jpg?sign=1739282022-bnRC5Qr7QbY3LEASLfkOK8P3El8VEzA6-0-4168fec08690e1bde6629dabf4940c72)
图2-24
02 这样即可忽略无须导入的字段,将数据导入Excel中,如图2-25所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_41_0_m.jpg?sign=1739282022-JeKGY4m7Nx0YxwtjpBYGafYZ1IxHfKDV-0-f91c68c9c33902107508c89b3a75eb33)
图2-25
■ 方法二:借助Power Query工具导入
01 在“数据”选项卡下单击“从文本/CSV”按钮,将文本文件中的数据导入Power Query。在Power Query导入界面单击“转换数据”按钮,如图2-26所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_41_1_l.jpg?sign=1739282022-7mqQrqJmn5mcn6QSdC2shuXHX6imGdaS-0-af8cc74e6f7e6a15c641ef51fd8fcf68)
图2-26
02 在Power Query编辑器中,按住<Ctrl>键不松开并依次选中无须导入的两列,单击“删除列”按钮,如图2-27所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_42_0_l.jpg?sign=1739282022-ojO8dYQVNwSIeBIDWswCn2nQHrWBvqCG-0-ecc4b2c77db3b1115577e957fe3520b0)
图2-27
03 单击“关闭并上载”按钮将Power Query中的转换结果导入Excel中,如图2-28所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_42_1_l.jpg?sign=1739282022-563e8X9tu550LsNyZjKpSJoCNYHLYTI9-0-3fa50346d5027b7f9d916607912c623c)
图2-28
04 Excel中的结果如图2-29所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_42_2_l.jpg?sign=1739282022-JIdhvTyxG9mcTtUQybXv27vcwtXpbfGK-0-c9786c969fed53cb8efbd9006556be16)
图2-29
2.1.4 从字段中选择性导入数据
当文本文件中需要删除的字段太多时,我们可以仅选择需要导入的字段进行导入。
原始文件中包含几十列数据,如图2-30所示,仅需导入前面的从“日期”至“转化率”的10个字段,后面的几十个字段数据无须导入。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_43_0_l.jpg?sign=1739282022-HaqMMGjVJpldAN1Zcv3LjNAMXvNCSTGs-0-9c1d86745b07a758cf7c685c51e39a03)
图2-30
下面依然分两种方法展开介绍。
■ 方法一:利用文本导入工具导入
01 参照2.1.1小节图2-3~图2-6所示的操作,在文本导入向导第3步对应的对话框中(如图2-31所示),先单击“退款额”所在的列,再按住鼠标左键不松开并向右拖动底部的滚动条直至最后一列。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_43_1_m.jpg?sign=1739282022-qq39U07omdSaeamCPhLr0UPOr2CwYSx8-0-f46f4d6f3db3aa0a801e594e673268aa)
图2-31
02 按住<Shift>键不松开并单击最后一列(“星期”字段所在的列),目的是选中从“退款额”至“星期”的连续几十列,然后选中“不导入此列(跳过)”单选项,单击“完成”按钮,如图2-32所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_44_0_m.jpg?sign=1739282022-FO3vvFbxxa4j7SI3VROUlqGHpEkEbmCc-0-6c832cbf3a2d3f0e6859a0f2c3c6f469)
图2-32
03 这样即可忽略无须导入的几十列,仅导入有效数据,如图2-33所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_44_1_m.jpg?sign=1739282022-VglaJh0hSXwrVdzbCl8U768QiH9VZ2MN-0-24545eaeca936343eb33e16a48627737)
图2-33
■ 方法二:借助Power Query工具导入
01 参照2. 1.2小节图2-9、图2-10所示的操作,将数据导入Power Query编辑器后,按住<Shift>键不松开并依次单击“日期”列和“转化率”列,目的是选中这些需要导入的连续多列数据,然后单击“删除列”按钮的下半部分,在弹出的下拉菜单中选择“删除其他列”,如图2-34所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_45_0_l.jpg?sign=1739282022-ZNMYVbayNiEf9ilYvkkmgh9BCvkOSGJB-0-9fc120a8949baf1ba54791849a0fef5c)
图2-34
02 在Power Query中转换得到想要的结果后,单击“关闭并上载”按钮,如图2-35所示。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_45_1_l.jpg?sign=1739282022-M4c04YeF4rfvTSN6z3veJU3Ov71heGVN-0-c512d5eee6918820788921715d482fa2)
图2-35
03 Excel中的效果如图2-36所示。
当然,借助Power Query导入的这些数据,可以借助“刷新”功能使之与数据源保持同步更新,这也是使用Power Query的极大优势所在。
![](https://epubservercos.yuewen.com/05BEE5/21407138601440706/epubprivate/OEBPS/Images/image_45_2_l.jpg?sign=1739282022-lhA6RwLOwZy90iGBOy0i2VbmgIb3eife-0-3bfd7313bacd6b20abdc26a01fbfbeb1)
图2-36