Vba 在所选单元格上运行记录的文本到列代码

Vba 在所选单元格上运行记录的文本到列代码,vba,excel,Vba,Excel,我正在尝试运行文本到列函数。我录制了一个宏,它似乎在我录制宏的单元格中的第一次尝试中起作用。我需要为我选择的任何单元格运行此宏,因此我将范围更改为“ActiveCell”,但这似乎破坏了代码 录制的宏: Selection.TextToColumns Destination:=Range("X32"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _

我正在尝试运行文本到列函数。我录制了一个宏,它似乎在我录制宏的单元格中的第一次尝试中起作用。我需要为我选择的任何单元格运行此宏,因此我将范围更改为“ActiveCell”,但这似乎破坏了代码

录制的宏:

Selection.TextToColumns Destination:=Range("X32"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 2), Array(2, 1), Array(3, 1)), TrailingMinusNumbers:=True
End Sub

当我选择一个文本带有分号的单元格并将其拆分为许多列时,我希望您选择一列作为该功能的源,即选择单元格“E5:E10”将起作用。 选择多个列作为输入将导致运行时错误

文档链接

代码

Sub TxtToCol()

Dim DestRng     As Range

' setting the destination range using a variable
Set DestRng = Range("X32")

With Selection
    .TextToColumns Destination:=DestRng, _
        DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, _
        ConsecutiveDelimiter:=False, _
        Tab:=False, _
        Semicolon:=True, _
        Comma:=False, _
        Space:=False, _
        Other:=False, _
        FieldInfo:=Array(Array(1, 2), Array(2, 1), Array(3, 1)), _
        TrailingMinusNumbers:=True
End With

End Sub
Sub TxtToCol()

Dim DestRng     As Range

' setting the destination range using a variable
Set DestRng = Range("X32")

With Selection
    .TextToColumns Destination:=DestRng, _
        DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, _
        ConsecutiveDelimiter:=False, _
        Tab:=False, _
        Semicolon:=True, _
        Comma:=False, _
        Space:=False, _
        Other:=False, _
        FieldInfo:=Array(Array(1, 2), Array(2, 1), Array(3, 1)), _
        TrailingMinusNumbers:=True
End With

End Sub