我有一个Excel文件,我必须计算“。”的数量。对于每个细胞。一个单元格有一些字符(例如'A01.10.10.10') 是否可以将单个单元格的内容转换为数组?
答案 0 :(得分:4)
您可以使用Split()
:
myArray = Split(Range("A1"), ".")
这会将Range("A1")
内容按句点“拆分”为数组。
你也可以直接返回split()
函数来获取ubound,因为返回是一个数组(跳过了dim
数组的需要):
UBound(Split(Range("A1"),"."))
根据您的意见,会吐出3
。
答案 1 :(得分:2)
为什么需要一个数组才能执行此操作?
您可以使用
在Excel公式中获得答案=LEN(A1)-LEN(SUBSTITUTE(A1,".",""))
或VBA
Sub CountDots()
Dim str As String
str = "A01.10.10.10"
MsgBox Len(str) - Len(Replace(str, ".", vbNullString))
End Sub
不需要数组。如果你打算用字符串做其他的事情并且需要它在数组中然后使用@JNevill回答
答案 2 :(得分:1)
你可以找到"。"在单个单元格中使用公式:
=Len(targetcell)-Len(Substitute(targetcell,".",""))
计算细胞数,然后计算"和#34;之后的细胞数。已被""取代(无)。
你不需要一个阵列。