簡體   English   中英

excel 用不同的分隔符分割字符串

[英]excel split string by different delimiters

如何拆分包含具有不同分隔符的字符串的單元格?

Cell A2 has "14:5-18:24"14 5 18 24

作為公式(需要 Excel 365 的動態陣列能力)

=IFERROR(TRANSPOSE(FILTERXML("<a><b>"&SUBSTITUTE(SUBSTITUTE(A2,"-",":"),":","</b><b>")&"</b></a>","//b")),"")

作為 VBA

Sub Demo()
    Dim rSrc As Range
    Dim rDst As Range
    Dim Src As String
    Dim Result As Variant
    
    Set rSrc = ActiveSheet.Range("A2")
    Set rDst = ActiveSheet.Range("B2")
    Src = rSrc.Value2
    Result = Split(Replace$(rSrc.Value2, "-", ":"), ":")
    With rDst.Resize(1, UBound(Result) - LBound(Result) + 1)
        .Value2 = Result  ' Places result as strings
        .Value2 = .Value2 ' Convert to numbers
    End With
    
End Sub

您也可以在 Power Query 中執行此操作:

M代碼

let
    Source = Excel.CurrentWorkbook(){[Name="Table9"]}[Content],
    Typed = Table.TransformColumnTypes(Source,{{"Column1", type text}}),

    Split = Table.SplitColumn(Typed,"Column1",Splitter.SplitTextByAnyDelimiter({":","-"}))
in
    Split

使用 Power Query

  • Select 數據表中的某個單元格
  • Data => Get&Transform => from Table/Range
  • 當 PQ 編輯器打開時: Home => Advanced Editor
  • 記下第 2 行中的表
  • 粘貼下面的 M 代碼代替您看到的內容
  • 將第 2 行中的表名稱更改回最初生成的名稱。

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM