Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 使用Excel行作为分隔符拆分函数_Arrays_Vba_Excel_Split - Fatal编程技术网

Arrays 使用Excel行作为分隔符拆分函数

Arrays 使用Excel行作为分隔符拆分函数,arrays,vba,excel,split,Arrays,Vba,Excel,Split,我有一个使用过的列,我想创建一个数组,使用cell/row作为分隔符将该列拆分为若干项 类似于:MyArray=Split(Excel.Workbooks(X).Worksheets(X).UsedRange.Columns(X),Row) 我得到类型不匹配错误 是否可能或是否有任何解决方法?函数的正确语法为拆分([String],[Delimiter String])。要在示例中实现这一点,最好创建一个循环: 例如,如果A列中有三个单词由“空格”分隔,并且您使用“空格”作为“描述字符串”,那

我有一个使用过的列,我想创建一个数组,使用cell/row作为分隔符将该列拆分为若干项

类似于:
MyArray=Split(Excel.Workbooks(X).Worksheets(X).UsedRange.Columns(X),Row)

我得到
类型不匹配
错误


是否可能或是否有任何解决方法?

函数的正确语法为
拆分([String],[Delimiter String])
。要在示例中实现这一点,最好创建一个循环:

例如,如果A列中有三个单词由“空格”分隔,并且您使用“空格”作为“描述字符串”,那么您将得到:

           A                B        C         D
1  Alpha Bravo Charlie    Alpha    Bravo    Charlie
2  Delta Echo Foxtrot     Delta    Echo     Foxtrot

如果您正在查找拆分单元格内容,并希望将其放在工作表/工作簿中的某个位置,则可以尝试此操作

Sub split_1()
Dim myarray() As String
Dim str As String
str = ThisWorkbook.Sheets("Sheet1").Range("A1").Value
'str = "this,sentence,seperated,by,comma"
   myarray = Split(str, ",")

   For i = LBound(myarray) To UBound(myarray)
      Debug.Print myarray(i) 'here you can copy to other cells/sheets, etc.,
    Next
End Sub

我很少不理解被问到的问题,但我不理解这个问题。如果你在寻找delimeter,而不是cell的意思,它本身是分离的,你可以按照你想要的方式复制/粘贴。如果要分隔单元格内容,则意味着您可以检查my answer.MyArray=Excel.Workbooks(X).Worksheets(X).UsedRange已被拆分,因为这会将每个单元格读入数组?如果您以前使用过拆分函数,并且知道分隔符是什么,则我很抱歉,但我的问题尽可能清楚。@LevySchiavetti您的问题不清楚,因为您没有以屏幕抓图的形式提供预期的输入和输出,也没有键入工作表前后的样子。尽管如此,我还是尝试澄清了
Split()
函数可以做什么。
Sub split_1()
Dim myarray() As String
Dim str As String
str = ThisWorkbook.Sheets("Sheet1").Range("A1").Value
'str = "this,sentence,seperated,by,comma"
   myarray = Split(str, ",")

   For i = LBound(myarray) To UBound(myarray)
      Debug.Print myarray(i) 'here you can copy to other cells/sheets, etc.,
    Next
End Sub