文字操作 OpenTextメソッド

※より実装に近く表示させる為、コードの改行を避けています。スマホ等で閲覧される際は向きを変えてご覧ください。

※実装するバージョンによってはバージョンアップの仕様により動作しないコードもあります。実装には動作確認の上ご使用下さい。

OpenText メソッド

テキスト ファイルを分析して読み込みます。テキスト ファイルを 1 枚のシートとして、それを含む新しいブックを開きます。

  • 構文

  • expression.OpenText(Filename, Origin, StartRow, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, DecimalSeparator, ThousandsSeparator)
  • expression
    必ず指定します。対象となる Workbooks コレクションを表すオブジェクト式を指定します。
  • Filename
    必ず指定します。文字列型 (String) の値を使用します。読み込まれるテキスト ファイルの名前を指定します。
  • Origin
    省略可能です。バリアント型 (Variant) の値を使用します。テキスト ファイルが作成された機種を指定します。使用できる定数は、XlPlatform クラスの xlMacintosh、xlWindows、xlMSDOS のいずれかです。この引数を省略すると、現在のテキスト ファイル ウィザードを使用している機種が指定されます。
  • StartRow
    省略可能です。バリアント型 (Variant) の値を使用します。取り込む開始行を指定します。最初の行を 1 として数えます。既定値は 1 です。
  • DataType
    省略可能です。バリアント型 (Variant) の値を使用します。ファイルに含まれるデータの形式を指定します。使用できる定数は、XlTextParsingType クラスの xlDelimited または xlFixedWidth です。既定値は xlDelimited です。
  • TextQualifier
    省略可能です。バリアント型 (Variant) の値を使用します。文字列の引用符を指定します。使用できる定数は、XlTextQualifier クラスの xlTextQualifierDoubleQuote、xlTextQualifierSingleQuote、xlTextQualifierNone です。既定値は xlTextQualifierDoubleQuote です。
  • ConsecutiveDelimiter
    省略可能です。バリアント型 (Variant) の値を使用します。連続した区切り文字を 1 文字として扱うときは True を指定します。既定値は False です。
  • Tab
    省略可能です。バリアント型 (Variant) の値を使用します。引数 DataType に xlDelimited を指定し、区切り文字にタブを使うときは True を指定します。既定値は False です。
  • Semicolon
    省略可能です。バリアント型 (Variant) の値を使用します。引数 DataType に xlDelimited を指定し、区切り文字にセミコロン (;) を使うときは True を指定します。既定値は False です。
  • Comma
    省略可能です。バリアント型 (Variant) の値を使用します。引数 DataType に xlDelimited を指定し、区切り文字にカンマ (,) を使うときは True を指定します。既定値は False です。
  • Space
    省略可能です。バリアント型 (Variant) の値を使用します。引数 DataType に xlDelimited を指定し、区切り文字にスペースを使うときは True を指定します。既定値は False です。
  • Other
    省略可能です。バリアント型 (Variant) の値を使用します。引数 DataType に xlDelimited を指定し、区切り文字に OtherChar で指定した文字を使うときは True を指定します。既定値は False です。
  • OtherChar
    省略可能です。バリアント型 (Variant) の値を使用します。引数 Other が True のときは、必ずこの引数に区切り文字を指定します。複数の文字を指定したときは、先頭の文字が区切り文字となり、残りの文字は無視されます。
  • FieldInfo
    省略可能です。バリアント型 (Variant) の値を使用します。各列のデータ形式を示す配列を指定します。データ形式の解釈は、引数 DataType に指定された値によって異なります。
  • 引数 DataType
    が xlDelimited のとき (データが区切り文字で区切られているとき) は、この引数には 2 つの要素を持つ配列の配列を指定します。2 つの要素を持つ配列の 1 つずつが、各列の処理方法を決定します。1 番目の要素には 1 から始まる列の番号を指定し、2 番目の要素には各列の変換方法を指定する、次の xlColumnDataType クラスの定数のいずれかを指定します。
  • 定数 内容
    xlGeneralFormat 一般
    xlTextFormat テキスト
    xlMDYFormat MDY (月日年) 形式の日付
    xlDMYFormat DMY (日年月) 形式の日付
    xlYMDFormat YMD (年月日) 形式の日付
    xlMYDFormat MYD (月年日) 形式の日付
    xlDYMFormat DYM (日年月) 形式の日付
    xlYDMFormat YDM (年日月) 形式の日付
    xlEMDFormat EMD (台湾年月日) 形式の日付
    xlSkipColumn スキップ列
  • 定数 xlEMDFormat
    は、簡易字中国語サポートがインストールおよび選択されている場合にのみ使用できます。定数 xlEMDFormat は、日付形式に台湾の元号が使用されていることを指定します。
  • 列の指定は
    、どのような順番でもかまいません。指定されなかった列は、一般の形式だと解釈されます。次の例では、3 番目の列は削除され、最初の列は文字列として解釈され、残りの列は一般の形式として解釈されます。
  • Array(Array(3, 9), Array(1, 2))
  • 引数 DataType
    が xlFixedWidth のとき (データが固定長で区切られているとき)、配列の 1 番目の要素には、行のどの位置から処理が行われるかを 0 から始まる整数で指定します。2 番目の要素には変換方法を 1 ~ 9 の数値で指定します (上の対応表参照)。
  • 次の例は、
    固定長のテキスト ファイルから 2 つの列を読み込みます
    。最初の列は行頭から 10 文字目までが入ります。11 文字目から 15 文字目まではスキップします。2 番目の列は 16 文字目から行の終わりまでとなります。
  • Array(Array(0, 1), Array(10, 9), Array(15, 1))
  • DecimalSeparator
    省略可能です。文字列型 (String) の値を使用します。Excel で数値を認識する場合に使う小数点の記号です。既定はシステム設定です。
  • ThousandsSeparator
    省略可能です。文字列型 (String) の値を使用します。Excel で数値を認識する場合に使う桁区切り記号でです。既定はシステム設定です。
  • さまざまなインポート設定
    でテキストを Excel にインポートする結果を次に示します。数値の結果は右詰めで表示します。
  • システムの小数点の記号 システムの桁区切りの記号 小数点の記号の値 桁区切りの記号の値 インポートしたテキスト セルの値 (データ型)
    ピリオド カンマ カンマ ピリオド 123.123,45 123,123.45 (数値)
    ピリオド カンマ カンマ カンマ 123.123,45 123.123,45 (文字列)
    カンマ ピリオド カンマ ピリオド 123123.45 123,123.45 (数値)
    ピリオド カンマ ピリオド カンマ 123 123.45 123 123.45 (文字列)
    ピリオド カンマ ピリオド スペース 123 123.45 123,123.45 (数値)
  • OpenText メソッドの使用例
  • 次の使用例は、Data.txt というテキスト ファイルを、タブを区切り文字として分析し、ワークシートに変換します。
Option Explicit

Workbooks.OpenText Filename:="DATA.TXT", _
    DataType:=xlDelimited, Tab:=True

 

 

 

2000年01月01日|[VBサンプルコード]:[文字操作]