我正在嘗試拆分單元格的內容,但被卡住了。單元格的內容將是:
樣品_1 10x
樣品_2 5x
樣品_3 100x
我需要洗掉除“x”之前的數字之外的內容。這些數字將顯示在另一個單元格中,然后用于計算。
最初,我將我的代碼設定為:
For Each unit In Range("SD")
If unit.Offset(0, -19).Value <> "Unknown" Then
unit.Value = "N/A"
End If
If unit.Offset(0, -19).Value = "Unknown" Then
If unit.Offset(0, -20).Value Like "*Sample*" Then
unit.Value = Left(Right(unit.Offset(0, -20), 3), 2)
End If
End If
但是,此公式僅適用于“x”之前的 1 位或 2 位數字,而不適用于 3 位數字。有沒有辦法在空格所在的地方拆分內容,從內容中洗掉“x”,并留下數字?
前任。
“樣本_1 10x”
在空間所在的位置拆分并留下第二半:“10x”
洗掉“x”
左邊有“10”
uj5u.com熱心網友回復:
您可以使用以下公式
=MID(A1,(FIND(" ",A1) 1),LEN(A1)-FIND(" ",A1)-1)
或者,您的資料位于單元格 A1、A2 和 A3 中,以下代碼顯示一個訊息框,其中包含 10、5 和 100
Sub a()
With Sheets(1).Range("A1")
For i = 0 To .CurrentRegion.Rows.Count - 1
StrData = .Offset(i, 0)
StrData = Left(StrData, Len(StrData) - 1)
MsgBox Mid(StrData, InStr(StrData, " ") 1)
Next i
End With
End Sub
uj5u.com熱心網友回復:
您可以使用Split和Val:
For Each unit In Range("SD")
If unit.Offset(0, -19).Value <> "Unknown" Then
unit.Value = "N/A"
End If
If unit.Offset(0, -19).Value = "Unknown" Then
If unit.Offset(0, -20).Value Like "*Sample*" Then
unit.Value = Val(Split(unit.Offset(0, -20).Value & " ", " ")(1))
End If
End If
Next
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/409587.html
標籤:
下一篇:M語言-僅從字串中提取5位數字
