Moj*_*imi 5 excel vba excel-vba
我正在尝试识别一个单元格有换行符(不是菜单栏单元格选项,实际多行通过alt + enter),并且单独提取每一行
我试过了两个
InStr(str, "\n") < 0
Run Code Online (Sandbox Code Playgroud)
和
Split(str, "\n")
Run Code Online (Sandbox Code Playgroud)
但似乎没有奏效
VBA中没有转义序列.vbNewLine改为使用内置常量:
hasLineBreaks = InStr(str, vbNewLine) > 0
Run Code Online (Sandbox Code Playgroud)
根据MSDN,vbNewline返回特定于平台的新行字符; 适用于当前平台的,即:
Chr(13)+ Chr(10)[在Windows上]或在Macintosh上,Chr(13)
因此,您不需要使用ASCII字符代码,甚至不需要使用各自的内置常量.
考虑:
Split(str, Chr(10))
Run Code Online (Sandbox Code Playgroud)
或者
Split(str, Chr(13))
Run Code Online (Sandbox Code Playgroud)
如果数据是从外部源导入的,您可能需要同时尝试这两种方法。