へっぽこヘタレシステム管理者の管理人です。
さて、昨日に引き続き・・・
ある部署からエクセルのマクロの作成を依頼され・・・
その過程で、いくつか部品を作ったので忘備録として掲載します。
EXCELのマクロを使ってCSVファイルを開く
まずは、コードです。
例では、マクロ1に割り当てています。
Sub Macro1()
'
' Macro1 Macro
'
Dim ws As Worksheet
Set ws = ActiveSheet ' CSV のデータを取り込むシート
Dim qt As QueryTable
Set qt = ws.QueryTables.Add(Connection:="TEXT;ファイルのフルパス", Destination:=ws.Range("A1")) ' CSV を開く
With qt
.TextFilePlatform = 65001 ' 文字コードを指定
'エンコード Shift-JIS 932 UTF-8 65001 UTF-16 1200
.TextFileParseType = xlDelimited ' 区切り文字の形式
.TextFileCommaDelimiter = True ' カンマ区切り
.RefreshStyle = xlOverwriteCells ' セルに上書き
.Refresh ' データを表示
.Delete ' CSV との接続を解除
End With
End Sub
コードの処理は次のとおりです。
CSVを読み込むシートを指定【例ではアクティブシート】
シートのどこから書き込むか【例ではアクティブシートのA1から】
CSVファイルをフルパスで指定
WITH句で、CSVの条件を指定【例では、カンマ区切り・エンコードはUTF-8】
コメント