🐡
Excelでのデータ加工変換と結果の書き出し方法について比較する
はじめに
Excelファイルを受領した際、Excelデータの加工変換が必要になるケースがあると思います。例えば、データのフォーマットを統一したり、システムに適した形式へ変換という場合です。その際どういった方法があるでしょうか。また加工変換したデータは書き出しも必要です。本記事では、Excelでのデータ加工変換とその後の書き出し方法について4つの手法で検討します。書き出し先に関しては、今回は最もシンプルなCSVでの書き出しで比較します。
比較する方法
1.手動
2.Excel関数
3.Excelマクロ
4.ETLツール
この4つの方法を比較します。それぞれの手法のメリットとデメリットをご紹介します。
1. 手動での変換
手順
- Excelファイルを開きます
- 変換したいデータを選択します
- 変換操作を手動で行います。たとえば、書式を変更したり、必要な編集を行います
- [ファイル]メニューから[名前を付けて保存]を選び、CSV形式で保存します
メリット
- 操作が直感的で簡単に実施できる
- PCが使えれば特別なスキルや知識が不要
デメリット
- 大量のデータに対しては非常に時間がかかる
- ヒューマンエラー(変換漏れなど)の可能性がある
2. Excel関数を使用した変換
手順
- Excelファイルを開きます
- 新しい列を追加し、必要な変換関数を入力します。例えば、データの形式を変更するための関数を使用します
- 関数を必要な範囲までドラッグして適用します
- 通常通り [ファイル] メニューから [名前を付けて保存] を選び、CSV形式で保存します
メリット
- 大量のデータに対して自動で処理できるため、効率が良い
- 関数を使用することで、一貫性のあるデータ処理が可能になる
デメリット
- 数式を入力しているため、使い方が熟知していないユーザーには難易度が高い
- 関数で出来る範囲のことしかできない
3. Excelマクロを使用した変換
手順
- Excelファイルを開きます。
- [開発]タブで [マクロ] を選択し、次に [新しいマクロ] をクリックします。
- 例えば以下のVBAコードを入力し、必要なデータ加工変換を実装します。
Sub DataTransformation() Dim cell As Range For Each cell In Selection ' データ加工の処理を書く(例: 全角から半角への変換など) cell.Value = StrConv(cell.Value, vbNarrow) Next cell End Sub
4.マクロを適用したい範囲を選択し、作成したマクロを実行します。
5.[ファイル] メニューから [名前を付けて保存] を選び、CSV形式で保存します。
メリット
- 一度マクロを設定すれば、何度でも簡単に実行できる
- 複雑なデータ加工も自動化できるため、非常に便利
デメリット
- VBAの知識が必要
- マクロがブラックボックス化し、俗人化につながる
ETLツールの利用
今回はクラウドETLツールである弊社のHULFT Squareでの手順を記載します。
手順
- 自動化スクリプトをGUI上で作成する
1-1. Excelの読み取り処理を作成する(読み込むExcelを指定してExcel画面から範囲選択)

1-2.CSVの書き込み処理を作成する(書き出しファイル名と列名を設定するだけ)

1-3.加工変換を作成する(おこないたい加工のアイコンを配置するだけ、今回は全角の文字を半角に変換)

1-4.スクリプトの完成
- ExcelファイルをETLが参照できるところに上げる
あとはツールが自動的に加工変換し、CSVファイルを出力します。
メリット
- GUI上で利用できるため非IT人材でも作成可能
- その後の保守が容易
デメリット
- Excelだけで完結しない
- 製品を利用するため料金がかかる
結論
各手法にはそれぞれのメリットとデメリットがありました。使用する状況に応じて最適な方法を選ぶべきです。一時的な処理の場合は手動での方法が良いですが、定期的な作業や大量のデータ処理には自動化を検討すべきです。中でもETLツールは、GUI上で利用ができ保守性に優れているため、ある程度の規模以上の場合はおススメです。
Discussion