いつもお世話になっております。23歳OLです。
VBA初心者です。初めて1か月ほどになります。
UTF8のファイルの読み込みについて質問させていただきます。
▼やりたいこと
UTF8で書かれたファイルを複数読み込んで、中身をエクセルの中に書き出すツールを作成中です。
現在UTF8で書かれたファイル以外のファイルは大丈夫なのですが、UTF8だけは、文字化けしてしまい、書き出されたものが読めません。
何とか解決したいのですが・・・。
お力添えください。
ちなみにUTF8はbomなしです。
▼現在書いているコード
Sub 集計()
' [[ 変数定義 ]]
Dim varFileName As Variant
Dim VWorkSheet As Worksheet
Dim NewWorkSheet As Worksheet
Dim SheetName As String
Dim fileName As Variant
Dim c As Long
Dim a As Variant
' [[ ファイルパスからファイル名を取得 ]]
SheetName = "chushutu"
' [[ ファイル名で新しいシート作成 ]]
Set NewWorkSheet = CreateWorkSheet(SheetName)
' [[ 複数ファイルパス名を取得 ]]
varFileName = Application.GetOpenFilename(FileFilter:="(.),.", _
Title:="ファイルの選択", MultiSelect:=True)
' [[ ファイルパス取得できなかったら ]]
If IsArray(varFileName) = False Then
Exit Sub
End If
' [[ ファイルパス取得できたら ]]
c = 0
For Each fileName In varFileName
' [[ CSVファイルを開く ]] Dim buf As String, n As Long Open fileName For Input As #1 c = c + 1 Do Until EOF(1) Line Input #1, buf
a = Split(buf, vbLf)
Cells(1, c).Resize(UBound(a), 1) = Application.Transpose(a) Loop ' [[ ファイルを閉じる(保存無し) ]] Close #1
Next fileName
end sub
いろいろ自分でも調べて、どうやら
Visual Basic Editor のメニューから[ツール]→[参照設定]を選び,[参照可能なライブラリファイル]の中から "Microsoft ActiveX Data Objects x.x Library" にチェックを入れるところまではできました←この作業があっているかどうかはわかりませんが。
できれば、新しい一時ファイルを作りたくはないのですが・・・。
お知恵をお貸しください。
以上となります。よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/03/11 07:58
2015/03/11 09:57
2015/03/24 02:50
2015/03/24 02:55