アプリケーションとしてのVBA Excel(エクセル) VBA の役立つ Tips の紹介

アプリケーションとしてのVBA

形式を指定してテキストファイルを開く

形式を指定してテキストファイルを開く


  カンマ区切りられたテキストファイルのそれぞれのデータは、数値や文字列や日付、
  それに不要なデータもあります。

  読み込み時に形式を指定してテキストファイルを開くことが出来ます。

Sub Read_TextFormat()

    Dim File種類, Prompt, Item As String
    Dim FileNamePath As Variant

    'ファイルのパスを取得します
    File種類 = "テキスト ファイル (*.txt),*.txt"
    Prompt = "テキスト ファイルを選択してください"
    FileNamePath = SelectFileNamePath(File種類, Prompt)

    If FileNamePath = False Then    'キャンセルボタンが押された
        End
    End If

    Workbooks.OpenText Filename:=FileNamePath, _
    DataType:=xlDelimited, comma:=True, _
    fieldinfo:=Array(Array(1, 2), Array(2, 1), Array(3, 9), _
                     Array(4, 5), Array(6, 2))
End Sub

Function SelectFileNamePath(File種類, Prompt) As Variant
  SelectFileNamePath = Application.GetOpenFilename(File種類, ,Prompt)
End Function


  Array関数は、Array(何番目のデータか(列番号)、変換する形式) と記述します。

  以下に変換する形式を表にまとめてあります。


数値定数変換する形式
1xlGeneralFormat一般
2xlTextFormat文字列
3xlMDYFormatMDY(月日年)形式の日付
4xlDMYFormatDMY(日月年)形式の日付
5xlYMDFormatYMD(年月日)形式の日付
6xlMYDFormatMYD(月年日)形式の日付
7xlDYMFormatDYM(日年月)形式の日付
8xlYDMFormatYDM(年日月)形式の日付
9xlSkipColumnスキップ・読み込まない
10xlEMDFormatEMD(台湾年月日)形式の日付


Copy (C) 2005   アプリケーションとしてのVBA   All Rights Reserved.