CSVファイルをExcel形式で起動して中身を取得
- yuji fukami
- 2024年12月29日
- 読了時間: 2分
<概要>
今回はCSVファイルをExcel形式で起動して中身を取得する汎用プロシージャの紹介です。
CSVファイル読み込みには、代表的に以下の4つの手段があります。
①テキストファイルとして読み込む方法
②ADO(ActiveX Data Objects)を利用する方法
③Excelブックとして直接開く方法
④Power Queryを利用する方法
これらのうちもっとも初心者に分かりやすく、かつ手動でもできる方法として③の方法を実装する為の汎用プロシージャを紹介します。
ただ、CSVファイルをエクセルで直接開く場合はエクセルのシートの仕様で文字列が勝手に数値に変換されたりするなどにより、データの正確性が担保されないなどのデメリットがあることも念頭においてください。
ですので、上記の一覧の③を用いる場合は、これらのデータの変換等があっても大丈夫なデータであるかどうかや、変換後されても正確に処理ができるかどうかというのを確認するようにしてください。
実際に③を実装する上では、順を追って下記の処理が必要になってきます。
・対象とするCSVが存在するかどうか確認
・CSVファイルをWorkbookとして起動
・起動しているWorkbookの一番のシートの中身を二次元配列として取得
・起動しているWorkbookを閉じる
今回紹介する汎用プロシージャ「InputCSVByOpen」では、これらの処理を毎回記述する必要はなく一行で実装ができるようになります。
<実行例>
今回の処理は教科書によく載っている記述ですので、実行サンプルは割愛します。
実際に手元にCSVファイルを用意して実行を確認してみてください。
<関連コード>
今回の汎用プロシージャは、下記の別で紹介している汎用プロシージャを使用しています。
・FileExists → https://www.softex-celware.com/post/fileexists
<関連記事>
今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。
コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。

コメント