1. 首页 > 科技

求VBA分列 求vba批量打印的代码

求VBA分列求vba批量打印的代码

vba中分列的函数

'j表示数组的第几列 a(i, j) = Split(tmp, "|")(j - 1) '把tmp用”|“符号切割成5段,依次保存到数组第i行的5个列中 Next Loop Close #,xcfCsk

excel 求写个 分列 VBA

Sub Macro1()

'

    Selection.TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, _

        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _

        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _

        :=" ", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True

End Sub勾选其他,输入空格即可分列

Excel 想要利用VBA实现分列,怎么操作

运用数组这个概念,用split这个函数去查找中间的分隔符,然后循环依次向后在单元格中赋值。

excel 字段分列vba程序

Sub 分离()

  For i = 2 To 7

    a = Cells(i, 1) '取1组拼音

    If Mid(a, 2, 1) = "h" Then '第2个为"h"则执行

      b = Mid(a, 1, 2) '取前2个字符

      Cells(i, 2) = b '赋值到单元格

      a = WorksheetFunction.Substitute(a, b, "") '从a中去掉已取字符

    ElseIf Mid(a, 3, 1) = "h" Then '第3个为"h"则执行

      b = Mid(a, 1, 3) '取前3个字符

      Cells(i, 2) = b '赋值到单元格

      a = WorksheetFunction.Substitute(a, b, "") '从a中去掉已取字符

    Else '否则执行

      b = Mid(a, 1, 1) '取第1个字符

      Cells(i, 2) = b '赋值到单元格

      a = WorksheetFunction.Substitute(a, b, "") '从a中去掉已取字符

    End If

    c = Len(a) '求a中字符数

    For j = 1 To c '循环

      b = Mid(a, j, 1) '取第1个字符

      Cells(i, j + 2) = b '赋值到单元格

    Next j

  Next i

End Sub    如果你说你的h不在第2个,那你就不是拼音了,普通小写英文字符串而已,规则看我说得对不对:h及h前面都是声母。会不会出现如shdi或tshdi这种形式的字符串?代码已经修改并测试成功。