Workbooks.OpenText 方法 (Excel)
使用包含已分析的文本文件数据的单个工作表加载和分析文本文件作为新工作簿。
语法
表达式。OpenText (FileName、 Origin、 StartRow、 DataType、 TextQualifier、 ConsecutiveDelimiter、 Tab、 分号、 逗号、 空格、 其他、 OtherChar、 FieldInfo、 TextVisualLayout、 DecimalSeparator、 ThousandsSeparator、 TrailingMinusNumbers、 Local)
表达 一个代表 Workbooks 对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
FileName | 必需 | String | 指定要打开和分列的文本文件的名称。 |
Origin | 可选 | Variant | 指定的文本文件来源。 可以是以下 XlPlatform 常量之一: xlMacintosh、 xlWindows 或 xlMSDOS。 此外,这可以是表示所需代码页的代码页号的整数。 例如,“1256”将指定源文本文件的编码是阿拉伯语 (Windows)。 如果省略此参数,该方法将使用文本导入向导中 “文件源” 选项的当前设置。 |
StartRow | 可选 | Variant | 文本分析开始处的行号。 默认值为 1。 |
DataType | 可选 | Variant | 指定文件中数据的列格式。 可为以下 XlTextParsingType 常量之一: xlDelimited 或 xlFixedWidth 。 如果未指定该参数,则 Microsoft Excel 将尝试在打开文件时确定列格式。 |
TextQualifier | 可选 | XlTextQualifier | 指定文本识别符号。 |
ConsecutiveDelimiter | 可选 | Variant | 如果为 True,则将连续分隔符视为一个分隔符。 默认值为 False 。 |
Tab | 可选 | Variant | 如果为 True,则将制表符作为分隔符(DataType 必须为 xlDelimited)。 默认值为 False。 |
Semicolon | 可选 | Variant | 如果为 True,则将分号字符作为分隔符(DataType 必须为 xlDelimited)。 默认值为 False。 |
Comma | 可选 | Variant | 如果为 True,则将逗号字符作为分隔符(DataType 必须为 xlDelimited)。 默认值为 False。 |
Space | 可选 | Variant | 如果为 True,则将空格字符作为分隔符(DataType 必须为 xlDelimited)。 默认值为 False。 |
Other | 可选 | Variant | 如果为 True , 则 OtherChar 参数指定的字符是分隔符 (DataType 必须为 xlDelimited) 。 默认值为 False。 |
OtherChar | 可选 | Variant | 如果 “其他” 为 True,则为 必需项。 当 Other 为 True 时指定分隔符字符。 如果指定了多个字符,则仅使用字符串中的第一个字符而忽略剩余字符。 |
FieldInfo | 可选 | Variant | 包含各个数据列解析信息的数组。 解释取决于 DataType 的值。 分隔数据时,此参数是一个双元素数组,每个双元素数组指定特定列的转换选项。 第一个元素是列号 (从 1 开始的) ,第二个元素是指定列分析方式的 XlColumnDataType 常量之一。 |
TextVisualLayout | 可选 | Variant | 文本的可视布局。 |
DecimalSeparator | 可选 | Variant | 识别数字时,Microsoft Excel 使用的小数分隔符。 默认设置为系统设置。 |
ThousandsSeparator | 可选 | Variant | 识别数字时,Excel 使用的千位分隔符。 默认设置为系统设置。 |
TrailingMinusNumbers | 可选 | Variant | 如果应将结尾为减号字符的数字视为负数处理,则指定为 True。 如果为 False 或省略该参数,则将结尾为减号字符的数字视为文本处理。 |
Local | 可选 | Variant | 如果应将计算机的区域设置用于分隔符、数字和数据格式,则指定 True 。 |
备注
FieldInfo 参数
仅当已安装并选择了台湾语言支持时,才使用 xlEMDFormat 。 xlEMDFormat 常量指定使用的中国台湾民国年份日期。
列说明符可以是任何顺序。 如果输入数据中的特定列不存在列说明符,则使用常规设置解析该列。
本示例将第三列作为 MDY(例如,01/10/1970) 处理,第一列作为文本处理,源数据中其他列以"常规"设置进行分列处理。
Array(Array(3, 3), Array(1, 2))
如果源数据具有固定宽度的列,则每个双元素数组的第一个元素指定列中的起始字符位置(作为整数;字符 0 (零)是第一个字符)。 如上表中所列,双元素数组的第二个元素将列的解析选项指定为 0 到 9 之间的数字。
ThousandsSeparator 参数
下表显示了使用不同的导入设置向 Excel 中导入文本时的结果。 数字结果显示在最右边的列中。
系统小数分隔符 | 系统千位分隔符 | 小数分隔符值 | 千位分隔符值 | 导入的文本 | 单元格的值(数据类型) |
---|---|---|---|---|---|
Period | 逗号 | 逗号 | 句号 | 123.123,45 | 123,123.45(数字) |
句号 | 逗号 | 逗号 | 逗号 | 123.123,45 | 123.123,45(文本) |
逗号 | 句号 | 句号 | 逗号 | 123,123.45 | 123,123.45(数字) |
句号 | 逗号 | 句号 | 逗号 | 123 123.45 | 123 123.45(文本) |
句号 | 逗号 | 句号 | 空格 | 123 123.45 | 123,123.45(数字) |
示例
本示例打开 Data.txt 文件并将制表符作为分隔符对此文件进行分列处理,将其转换成为工作表。
Workbooks.OpenText filename:="DATA.TXT", _
dataType:=xlDelimited, tab:=True
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。