從包含特定字母或字元的字串中提取整個單字

從包含特定字母或字元的字串中提取整個單字

我只想從文字中包含特定字元(“=”)的單元格中提取單字。

A2:  Dolly made me a homemade=cake and some muffins
A3:  we had cheese=cake for dinner
A4: Everyone loves how the bakery makes some awesome=cakes

我希望列 (A2:A4) 中的以下內容在列 (B2:B4) 中提供以下結果。

B2:  homemade=cake
B3:  cheese=cake
B4:  awesome=cakes

我已經使用工作表函數嘗試了以下解決方案。

A2: Johnny made his own dinner=lastnight and then cleaned the kitchen

=TRIM(TRIM(IFERROR(RIGHT(SUBSTITUTE(LEFT(A2,SEARCH(" ",A2&" ",SEARCH("=",A2))-1)," ",REPT(" ",LEN(A2))),LEN(C246)),""))),""),

正如您所看到的,該公式不起作用,因為它僅提取 (“=”) 符號右側的數據,結果如下。然而,我正在尋找一種解決方案,可以提取(“=”)符號所在位置的整個單字(右側和左側)。

答案1

嘗試以下操作U塞爾D精緻的F塗油(UDF)

Public Function Equals(inpt As String) As String
   Equals = ""
   ary = Split(Application.WorksheetFunction.Trim(inpt), " ")
   For Each a In ary
      If InStr(1, a, "=") > 0 Then
         Equals = a
         Exit Function
      End If
   Next a
End Function

在此輸入影像描述

使用者定義函數 (UDF) 非常易於安裝和使用:

  1. ALT-F11 調出 VBE 窗口
  2. ALT-I ALT-M 開啟新模組
  3. 將內容貼進去並關閉 VBE 窗口

如果儲存工作簿,UDF 將隨之儲存。如果您使用的是 2003 年以後的 Excel 版本,則必須將檔案另存為 .xlsm 而不是 .xlsx

若要刪除 UDF:

  1. 如上所示調出 VBE 窗口
  2. 清除程式碼
  3. 關閉VBE視窗

若要使用 Excel 中的 UDF:

=等於(A1)

要了解有關巨集的更多信息,請參閱:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

有關 UDF 的詳細信息,請參閱:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

必須啟用巨集才能使其工作!

編輯#1:

你可以做到這一點,無需程式設計語言,使用相同的方法。數據在A1, 在C1進入:

=TRIM(MID(SUBSTITUTE($A1," ",REPT(" ",999)),COLUMNS($A:A)*999-998,999))

並複製過來。然後在B1進入:

=INDEX(C1:IV1,MATCH("*=*",C1:IV1,0))

在此輸入影像描述

答案2

Excel 具有許多文字函數,可協助您從另一個文字字串中提取單字或文字。使用哪個函數或函數組合取決於您的情況。範例:假設儲存格 A1 具有文字字串:“創造力需要勇氣放棄確定性”

1. 要取得字串的前 5 個字符,我們使用 LEFT 函數:=LEFT(A1,5) 結果是“Creat”

2. 要取得字串的最後 11 個字符,我們使用 RIGHT 函數:=RIGHT(A1,11) 結果是“certainties”

3. 要從字串中從位置 10 開始取得 7 個字符,我們使用 MID 函數: =MID(A1,10,7) 結果為「y requi」。

4.要取得字串的第一個單詞,我們使用 LEFT 和 FIND 函數: =LEFT(A1,(FIND(” “,A1)-1)) 結果是“Creativity”。

- 更多資訊請見:http://www.exceldigest.com/myblog/2009/02/01/how-to-extract-text-from-another-text-string/#sthash.yNDHU7Xe.dpuf

相關內容