将细胞串分成单个细胞

che*_*id1 3 excel vba excel-formula

我无法将单个单元格的值拆分为两个不同的字符串,并将这两个字符串放在不同的单元格中.

例如,我想10ft x 20ft在一个单元格中取一个测量值10ft并将其放入另一个单元格中,20ft并将其放入一个完全不同的单元格中.

我想使用分隔符x或其他东西,但我只是不知道如何分割这些分色并在分裂后对它们做些什么.

任何提示将非常感激.我还是VBA宏的新手.

谢谢

man*_*umx 5

最好的解决方案是使用SPLIT

Dim strX As String
Dim sx() As String
Dim i as Integer
strX = "10FT x 20FT"
sx = Split(strX, "x")
Run Code Online (Sandbox Code Playgroud)

或者也许你可以使用instr函数

Dim sVar1 as string
Dim sVar2 as string

I = InStr(1, strX, "x")
Run Code Online (Sandbox Code Playgroud)

现在你知道哪里可以分割两个变量

sVar1 = mid(strX, 1, I)
sVar2 = mid(strx,i+1)
Run Code Online (Sandbox Code Playgroud)

该函数的问题在于,如果链中有多个键要与之分离,则函数将返回一个更大的数组.例如:Dim var as string var ="x 20XP 10XP"

回报

array (0) = "10"
array (1) = "p"
array (2) = "20"
array (3) = "p"
Run Code Online (Sandbox Code Playgroud)


bre*_*tdj 5

你实际上并不需要VBA.您可以使用Excel的文本到列

例如,在

  1. 数据...... 列到文本
  2. 选择delimited并按下下一步
  3. 检查空格并将"x"放入" 其他"并按" 下一步"

在此输入图像描述