[英]Extracting text in excel
我每天都會收到一些需要分開的短信。 我有數百行類似於下面的摘錄:
COMMODITY PRICE DIFFERENTIAL: FEB50-FEB40 (APR): COMPANY A OFFERS 1000KB AT $0.40
我需要從該文本中提取單個片段,因此對於單獨單元格中的每個片段,我的結果需要是日期、月份、公司、大小和價格。 在這種情況下,結果將是:
FEB50-40
APR
COMPANY A
100
0.40
我正在努力解決的問題是一致性。 例如,一條線可能有FEB50-FEB40
、另一條FEB5-FEB40
或FEB50-FEB4
。 另一個讓我感到困難的例子是,某些行可能有'COMPANY A'
和另一個'COMPANYA'
(一個詞而不是兩個)。
有任何想法嗎? 我一直在嘗試以下組合,但我無法獲得統一的結果。
=TRIM(MID(SUBSTITUTE($D7," ",REPT(" ",LEN($D7))), (5)*LEN($D7)+1,LEN($D7)))
=MID($D7,20,21-10)
=TRIM(RIGHT(SUBSTITUTE($D6,"$",REPT("$",2)),4))
有時我得到
FEB40-50(' OR 'FEB40-FEB5'
什么時候應該
'FEB40-FEB50'`
謝謝誰能幫忙。
在這種情況下,您可能會遇到公式的限制,但使用 Power Query,您仍然可以工作。
如我所見,您希望應用以下邏輯從該字符串中提取文本:
COMMODITY PRICE DIFFERENTIAL: FEB50-FEB40 (APR): COMPANY A OFFERS 1000KB AT $0.40
:
和第一個(
OFFERS
之后和AT
之前的文本這些可以很容易地轉化為 Power Query 中的幾個“拆分”場景。
:
- 這是冒號和空格 - 每次出現(
分割新的第一列 - 那是空格和括號 - 最左邊)
替換為第二列中的任何內容OFFERS
拆分第三列AT
拆分新的第四列屏幕截圖顯示了在重命名列之后和將查詢加載到工作表之前 Power Query 編輯器中的輸入數據和結果。
加載查詢后,您可以在輸入表中添加/刪除數據,只需刷新查詢即可獲得結果。 沒有公式,只需單擊功能區命令。
您可以通過從列中刪除“KB”,將其轉換為數字,除以 100 來進一步實現這一點。您的業務處理邏輯將推動您想要做的事情。 一步一步來。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.