tft每日頭條

 > 生活

 > 如何将txt文本轉換成excel

如何将txt文本轉換成excel

生活 更新时间:2025-02-07 19:18:10
例題描述

現有一個文本格式的客戶報價單數據item.txt如下圖所示:

如何将txt文本轉換成excel(如何從有規律的)1

橫線之前的行是複雜的表頭,之後的每一行是一條報價記錄,記錄之間有空行。圖中所示隻是一個表頭和報價記錄區,這樣的區域在文本文件中會不斷地重複出現。紅框所示分别是Unit Price和Exp. Date字段列,中間還有Quotation Number、Customer Code、Customer Name字段列,各列數據之間都是空格。

現在需要把文本文件中的報價單數據提取出來,存到Excel文件中如下圖所示:

如何将txt文本轉換成excel(如何從有規律的)2

實現步驟

1、 觀察并發現文本中的規律

我們發現這個文本有這樣的規律:

(1)、少于136個字符的行都沒有有效信息,可以跳過

(2)、所需數據位于每行59列至136列

(3)、把每行有效信息部分按空格為分隔符拆分,若第1個拆分值是數值類型,則此行是報價記錄,否則可跳過。第1個拆分值是Unit Price列,第2個是Quotation Number列,第3個是Customer Code列,最後1個是Contract Expiry Date列,第4個至倒數第2個用空格連接起來是Customer Name列。

不同文本數據的規律可能不一樣,但總是要有規律才能解析。

2、 運行集算器

可去潤乾官網下載職場版,同時下載一個免費授權就夠了,首次運行時會提示加載。

編寫腳本:

如何将txt文本轉換成excel(如何從有規律的)3

把代碼列出來看得清楚點:

如何将txt文本轉換成excel(如何從有規律的)4

A1 創建目标數據集

A2 打開報價單文本文件item.txt,讀入文件内容,選項@n表示每一行讀成一個字符串

A3 循環處理每一行文本,實施前面找出來的規律

B3C3 如果本行長度小于136,則跳過此行

B4 提取本行數據的第59至136列

C4 對B4中提取出來的數據按空白符進行拆分,選項t表示拆分後去除兩端的空白,選項p表示把拆分後的串解析成對應的數據類型

B5C5 如果C4拆分出的第一個值不是數值類型,則跳過此行

B6 将C4拆分出來的第4個值到倒數第二個值用空格連接成串

B7 将C4拆分出的第3個值、B6、C4拆分出的第2個值、第1個值、最後一個值按順序插入到A1的新記錄中

A8 将所有提取的數據保存到Excel文件item.xlsx中

3、 按F9運行這段程序,可以看到E:/txt2excel/item.xlsx文件已經生成了

如何将txt文本轉換成excel(如何從有規律的)5

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved