什麼是 Python 中的自我:真實世界的例子
什麼是 Python 中的自我:真實世界的例子
有時您使用的數據未按您需要的方式格式化。例如,您的單元格中可能混合了數字和文本,您需要清理這些數據。
有幾種技術可以從文本左側刪除 Excel 中的數字。當數據具有一致的模式時,某些方法會起作用。VBA 或更複雜的公式適用於結構化程度較低的數據。
本文演示刪除文本數據左側數字的七種方法。到最後,您將全面了解不同的技術以及何時使用它們。
我們走吧!
目錄
如何使用快速填充從左側刪除 Excel 中的數字
快速填充是一項 Excel 功能,可以自動為您填充圖案。這是從單元格左側刪除數字的快速簡便方法。
這種方法可能並不總是完美,但它對簡單的情況很有幫助。請按照以下步驟使用快速填充:
在與數據相鄰的空列中,鍵入不帶數字的所需結果(例如,如果“1234apple”在單元格 A1 中,則在單元格 B1 中鍵入“apple”)。
選擇包含新數據的單元格(在我們的示例中為 B1),然後單擊功能區上的“數據”選項卡。
單擊“數據工具”部分中的“快速填充”按鈕。
Excel 將自動應用該模式以從相鄰單元格的左側刪除數字。
這是“數據”選項卡中“快速填充”按鈕的位置。
如果您更喜歡使用快捷方式,請在 Windows 上按 CTRL + E 或在 Mac 上按 CMD + E。
快速填充是一項方便的功能,但與 Excel 中的大多數內容一樣,有多種方法可以完成同一任務。
在下一節中,我們將了解如何使用“文本到列”功能來做同樣的事情。
如何使用文本分欄功能刪除數字
您可以使用 Excel 中的“文本到列”功能來分隔單元格左側的數字。但是,此方法假定單元格中的數字和文本之間存在一致的模式或分隔符。
讓我們處理一組使用破折號將數字與字母分開的數據,如下所示:
1234-蘋果
4321-橙色
9876-梨
這是我們想要實現的前後對比:
以下是此示例數據集的分步指南:
選擇 A 列。
轉到“數據”選項卡並單擊“文本到列”嚮導。
選擇定界選項並單擊下一步。
取消選中所有分隔符(默認情況下可能會應用該選項卡)。
選中其他分隔符並在輸入框中鍵入“-”。
選擇適當的分隔符(空格、逗號等)。
單擊下一步和完成。
數據現在將分為兩列。刪除的字符位於第一列,而其余文本位於第二列。此圖顯示如何設置分隔符:
接下來,讓我們看一下在 Excel 中刪除數字的五個文本函數。
在 Excel 中從左側刪除數字的 5 個文本函數
如果您知道有多少個字符組成數字,則可以使用文本函數刪除它們。
假設單元格 A1 包含字符串“ 1234apple ”。前四個字符是我們要刪除的數字。
有幾個函數可以單獨使用或組合使用來刪除數值字符。
1.MID功能
您可以使用 MID 函數提取字符串中從第 5 個字符開始的部分。
MID 函數提取文本字符串的特定部分,給定起始位置和要提取的字符數。MID 函數的語法是:
MID(文本, start_num, num_chars)
文本:包含要提取的字符的文本字符串。
start_num:要提取的第一個字符的位置。
num_chars:要從文本字符串中提取的字符數。
要刪除左側的數字,請按照下列步驟操作:
選擇單元格 B2 以包含函數和結果。
輸入公式:MID(A1, 5, 7)
上面的公式將從字符串中的第 5 個位置刪除字符。
2.結合LEN功能
這種方法的一個缺點是您的文本字符串的長度可能並不總是相同。
您可以使用 LEN 函數動態計算長度。此函數返回文本字符串的長度。
您可以修改公式,將第三個參數替換為 LEN 函數,如下所示:
=中(A1, 5, LEN(A1)-4)
您可以使用填充柄向下複製公式。此圖顯示了上述公式的使用:
3. 組合 LEFT 和 SUBSTITUTE 函數
LEFT 函數返回文本字符串中最左邊的字符。例如,LEFT(“1234apple”, 4) 將返回值“1234”。
當您要提取數字時,這很有用。但是如果你想刪除它們怎麼辦?
您可以將 LEFT 與 SUBSTITUTE 函數結合使用,以用空字符串替換數字。這是我們示例的格式:
=替換(A1,左(A1,4),“”)
4. 使用 RIGHT 和 LEN 功能
RIGHT 函數返回文本字符串中最右邊的字符。RIGHT 函數的語法是:
右(文本,[num_chars])
文本:包含要提取的字符的文本字符串。
num_chars:(可選)要從文本字符串右側提取的字符數。如果省略,則默認為 1。
例如,RIGHT(“1234apple”, 5) 將返回值“apple”。
您還可以結合使用 RIGHT 和 LEN 函數來避免對字母字符的數量進行硬編碼。這是假設您知道數字字符的數量。
我們示例的格式為:=RIGHT(A1, LEN(A1)-4)
5.使用REPLACE函數
REPLACE 函數可用於從單元格的左側替換特定數量的字符。這是語法:
替換(舊文本、起始編號、字符數、新文本)
old_text:要修改的原始文本字符串。
start_num:old_text 中要開始替換字符的位置。
num_chars:要替換的舊文本中的字符數。
new_text:要用來替換指定字符的文本字符串。
以下公式適用於我們的示例數據:
=REPLACE(A1, 1, 4, “”)
這是我們用於從 Excel 中刪除左側字符的五個文本函數中的最後一個。
在大多數情況下,到目前為止我們介紹的七種方法應該足夠了,但如果您想要更強大的功能,Power Query 就是答案,這就是我們將在下一節中討論的內容!
如何使用 Power Query 從左邊刪除數字
Power Query 是 Excel 中提供的功能強大的數據轉換工具。本節中顯示的方法假定單元格中的數字和文本之間有一個分隔符。
第一步是將目標數據轉換為表:
轉到“數據”選項卡。
選擇單元格範圍。
從功能區的“獲取數據”部分選擇“來自表/範圍”。
當 Power Query 編輯器打開時,請按照下列步驟操作:
選擇目標列。
轉到“轉換”選項卡
單擊功能區中的“提取”,然後選擇“分隔符後的文本”。
在“定界符後的文本”對話框中,輸入破折號 (-)。
單擊“確定”接受詳細信息。
轉換後的列現在將從文本左側刪除數字。
單擊“關閉並加載”將轉換後的數據加載回您的工作表中。
如果您不熟悉此數據工具,請查看我們的教程,了解如何在 Excel 中使用 Power Query。
如果您想更深入地了解如何在 Power Query 中使用表格,此視頻將介紹一些更複雜的示例:
3個進階技巧,不管字數多少
到目前為止,這些方法的主要缺點是所有單元格中的數字必須遵循相同的模式或者是特定數量的字符。
如果要刪除原始數據中沒有清晰模式的字符怎麼辦?本節中的技術適用於中級 Excel 用戶。
1. 將輔助列與公式相結合以從單元格左側刪除字符
當您不知道數字的總長度時,您可以將函數與輔助列結合使用。此方法需要一個兩步過程:
使用公式創建原始文本的臨時修改版本
使用另一個公式根據修改後的文本刪除數字。
第一步是使用以下公式將所有數字替換為特定字符(例如“|”):
=替代品(替代品(替代品(替代品(替代品(替代品(替代品(替代品(替代品(A1,“0”,“|”),“1”,“|”),“2”,“|”), “3”,“|”),“4”,“|”),“5”,“|”),“6”,“|”),“7”,“|”),“8”,“ |”)、“9”、“|”)
第二步是在另一個輔助列(例如 C 列)中使用以下公式:
=TRIM(右(替換(B1, “|”, REPT(” “, LEN(B1))), LEN(B1)))
這是 B 列和 C 列中公式的前後對比:
當您開始像這樣組合函數時,您可能會遇到在公式中選擇錯誤選項的問題。我們關於如何在 Excel 中查找循環引用的文章將幫助您解決常見錯誤。
您可能還想共享包含輔助列的電子表格。重要的是您的同事不要刪除或修改中間結果中的公式。我們有關在 Excel 中鎖定列的方法的文章將幫助您生成該功能。
2.創建一個VBA宏來刪除數字
VBA 是一種多功能腳本語言,可讓您在 Excel 中自動執行任務並創建自定義解決方案。
例如,您可以編寫一個宏,從特定列或範圍內的所有單元格左側刪除數字。
為此,請按照下列步驟操作:
按ALT + F11 打開 VBA 編輯器。
單擊“插入”>“模塊”以創建新模塊。
複製並粘貼以下代碼以僅刪除 A 列左側的數字:
Sub RemoveLeftNumbers()
Dim ws As Worksheet, cell As Range, i As Integer
' Set the active worksheet as the target worksheet
Set ws = ActiveSheet
' Loop through all the cells in column A
For Each cell In ws.Range("A1:A" & ws.Cells(ws.Rows.Count, 1).End(xlUp).Row)
' Remove numbers from the left of each cell
For i = 1 To Len(cell.Value)
If Not IsNumeric(Mid(cell.Value, i, 1)) Then
Exit For
End If
Next i
cell.Value = Mid(cell.Value, i)
Next cell
End Sub
最後一步是運行宏。單擊綠色三角形或“運行”菜單項。
3.創建一個用戶定義的函數
您還可以使用 VBA 創建一個用戶定義的函數,您可以在您的公式中使用它。
為此,請按照下列步驟操作:
按 ALT + F11 打開 VBA 編輯器。
單擊“插入”>“模塊”以創建新模塊。
複製並粘貼以下代碼:
Public Function RemoveNumbersFromLeft (text As String) As String
Dim i As Integer
For i = 1 To Len(text)
If Not IsNumeric(Mid(text, i, 1)) Then
Exit For
End If
Next i
RemoveNumbersFromLeft = Mid(text, i)
End Function
現在,返回您的 Excel 工作表並在公式中使用公共函數。
例如,此公式通過接受 A1 單元格來工作:
=RemoveNumbersFromLeft(A1)
最後的想法
在本文中,我們探索了多種從 Excel 中的文本字符串左側刪除數字的方法。每種技術都有其自身的優點和局限性。
沒有一種方法可以完美適用於所有情況,但肯定有一種方法最適合您的需要。通過練習,您將精通應用這些技術來處理遇到的任何數據格式設置挑戰。
所以你已經了解了在 Excel 中從左側刪除不需要的數字的來龍去脈。一開始它可能看起來有點棘手,但如果使用正確的技術,您很快就會掌握它!快樂的數字運算!
什麼是 Python 中的自我:真實世界的例子
您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。
在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。
本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。
在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。
我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。
了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。
本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。
如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。
什麼是 LuckyTemplates 網關?所有你必須知道的