载入一个文本文件,并将其作为包含单个工作表的工作簿进行分列处理,然后在此工作表中放入经过分列处理的文本文件数据。
expression.OpenText(FileName, Origin, StartRow, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, TextVisualLayout, DecimalSeparator, ThousandsSeparator, TrailingMinusNumbers, Local)
expression 必需。该表达式返回“应用于”列表中的一个对象。
FileName String 类型,必需。指定要载入并作分列处理的文件名。
Origin Variant 类型,可选。指定文本文件来源。可为以下 XlPlatform 常量之一:xlMacintosh、xlWindows 或 xlMSDOS。如果省略该参数,则此方法就会使用在“文本导入向导”中的“文件来源”选项的当前设置。
StartRow Variant 类型,可选。作分列处理的起始行号。默认值为 1。
DataType Variant 类型,可选。在文件中指定数据的列格式。可为以下 XlTextParsingType 常量之一:xlDelimited 或 xlFixedWidth。如果未指定该参数,则 Microsoft Excel 将在打开此文件时确定列格式。
TextQualifier XlTextQualifier 类型,可选。指定文本识别符。
XlTextQualifier 可为以下 XlTextQualifier 常量之一。 |
xlTextQualifierDoubleQuote default |
xlTextQualifierNone |
xlTextQualifierSingleQuote |
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 类型,可选(如果 Other 为 True,则必需)。当 Other 为 True 时,指定分隔字符。如果指定了多个字符,则将字符串中的第一个字符作为分隔符,并忽略其余的字符。
FieldInfo xlColumnDataType 类型,可选。包含各数据列分析信息的数组。对本参数的解释取决于 DataType 值。如果此数据由分隔符分隔,本参数为由两元素数组组成的数组,其中每个两元素数组指定一个特定列的转换选项。第一个元素为列标(从 1 开始),第二个元素是 XlColumnDataType 常量之一,用以指定如何分析该列。
XlColumnDataType 可为以下 XlColumnDataType 常量之一。 |
xlGeneralFormat 常规 |
xlTextFormat 文本
xlMDYFormat MDY 日期 xlDMYFormat DMY 日期 xlYMDFormat YMD 日期 xlMYDFormat MYD 日期 xlDYMFormat DYM 日期 xlYDMFormat YDM 日期 xlEMDFormat EMD 日期 xlSkipColumn 忽略列 |
只有在安装并选定了台湾地区语言支持时才可使用 xlEMDFormat。xlEMDFormat 常量指定使用台湾地区纪年日期。
列标识符指定顺序不限。输入数据中如果某列没有列标识符,则用常规设置对该列进行分列处理。本示例设置分列处理时跳过第三列,将第一列作为文本处理,源数据中其他列以常规设置进行分列处理。
Array(Array(3, 9), Array(1, 2))
如果源数据为定宽列,则每个两元数组的第一个元素指定起始元素在列中的位置,(用整数表示,第一个字符为 0 (零)),第二个元素用 1 到 9 的数字指定分列选项,如前表所示。
下列示例在一个定宽文本文件中分列出两列。第一列包含从第 1 至第 10 个字符,忽略第 11、12、13、14 及 15 个字符。第二列包含从第 16 个字符至该行的最后一个字符。
Array(Array(0, 1), Array(10, 9), Array(15, 1))
TextVisualLayout Variant 类型,可选。文字的可视布局。
DecimalSeparator Variant 类型,可选。表示在识别数字时,Microsoft Excel 使用的小数位分隔符。默认设置为系统设置。
ThousandsSeparator Variant 类型,可选。 表示在识别数字时,Excel 使用的千位分隔符。默认设置为系统设置。
下表显示了使用不同的导入设置向 Excel 中导入文本时的结果。数字结果显示在最右边的列中。
系统小数位分隔符 | 系统千位分隔符 | 小数位分隔符值 | 千位分隔符值 | 导入的文本 | 单元格的值(数据类型) |
---|---|---|---|---|---|
句点 | 逗号 | 逗号 | 句点 | 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(数字) |
TrailingMinusNumbers Variant 类型,可选。
Local Variant 类型,可选。
本示例打开 Data.txt 文件并将制表符作为分隔符对此文件进行分列处理,转换成为工作表。
Workbooks.OpenText filename:="DATA.TXT", _
dataType:=xlDelimited, tab:=True