我无法将单个单元格的值拆分为两个不同的字符串并将这两个字符串放在不同的单元格中。
例如,我想10ft x 20ft
在一个单元格中获取一个测量值10ft
并将其放入另一个单元格中,然后20ft
将其放入一个完全不同的单元格中。
我想使用分隔符x
或其他东西,但我只是不知道如何进行这些分隔并在拆分后对它们做一些事情。
任何提示将不胜感激。我对 VBA 宏还是很陌生。
谢谢
我无法将单个单元格的值拆分为两个不同的字符串并将这两个字符串放在不同的单元格中。
例如,我想10ft x 20ft
在一个单元格中获取一个测量值10ft
并将其放入另一个单元格中,然后20ft
将其放入一个完全不同的单元格中。
我想使用分隔符x
或其他东西,但我只是不知道如何进行这些分隔并在拆分后对它们做一些事情。
任何提示将不胜感激。我对 VBA 宏还是很陌生。
谢谢
最好的解决方案是使用 SPLIT
Dim strX As String
Dim sx() As String
Dim i as Integer
strX = "10FT x 20FT"
sx = Split(strX, "x")
或者你可以使用 instr 函数
Dim sVar1 as string
Dim sVar2 as string
I = InStr(1, strX, "x")
现在你知道在哪里可以拆分 int 两个变量
sVar1 = mid(strX, 1, I)
sVar2 = mid(strx,i+1)
该函数的问题在于,如果链中有多个要用来分隔函数的键,则会返回一个更大的数组。例如: Dim var as string var = "x 20XP 10XP"
返回
array (0) = "10"
array (1) = "p"
array (2) = "20"
array (3) = "p"
我想我只是需要看起来更努力一点。
Sub Split_CutArea()
Dim str1() As String
Dim str2() As String
Dim avarsplit As Variant
avarsplit = Split(Cells(4, "B").Value, "x")
splitValues = Split(ActiveSheet.Cells(4, "B").Value)
ActiveSheet.Cells(22, "B").Value = splitValues(0) & splitValues(1)
ActiveSheet.Cells(23, "B").Value = splitValues(3) & splitValues(4)
End Sub