動画内の準備ファイルは必要に応じて配布しています。
古いコンテンツだと用意されていない可能性があります。
用意されていないもので、演習に必要であればお問い合わせください。
2021年11月7日【ID:240】
【業務】CSVファイルを超高速で自動読込
YouTubeで開く
CSVファイルを超高速で自動読込する方法について解説しています。
この考え方は、Excelでシステムを作る際に役立つ内容になっています。
こちらの内容を実行して1行で出力されてしまう場合は、こちらを参考にしてください。
>>改行コード対策
問題から原因、原因から解決策と順番に解説しています。
00:00 挨拶
00:18 完成イメージ
01:20 準備
01:55 作成(読込速度を上げる方法)
03:21 作成(CSV読込関数)
25:51 完成
26:28 プログラムの全体
37:15 まとめ
<補足>
列数が多い場合は、列数もReDimではなく固定値にした方が処理が早いです。
例:列が最大30個の場合
↓
…
Dim date() As Variant
ReDim data(99999, 0) → ReDim data(99999, 29)
Dim max As Long → 削除
max = 0 → 削除
…
If max < j Then → 削除
ReDim Preserve data(…) → 削除
max = j → 削除
End If → 削除
…
Close #1
Range(…,Cells(100000,max+1)).… → Range(…,Cells(100000,30)).…
…
――― Splitについて ―――
【CSVファイル形式】
[1,2,3,4,5]
v = Split(行データ, ",")
【CSVファイル形式(Limit=3)】
[1,2,3,4,5]
v = Split(行データ, ",", Limit:=3)
【CSVファイル形式(ダブルクォーテーション)】
["1","2","3","4","5"]
v = Split(Replace(行データ, """", ""), ",")
【CSVファイル形式(タブ区切り)】
[1 2 3 4 5]
v = Split(s, vbTab)
【CSVファイル形式(文字区切り)】
[1A2A3A4]
v = Split(行データ, "A")
【CSVファイル形式(文字区切り:テキストモード)】
[1A2A3A4]
v = Split(行データ, "a", Compare:=vbTextCompare)
【CSVファイル形式(複数文字区切り)】
[1@@@2@@@3@@@4]
v = Split(行データ, "@@@")
※ こちらのコンテンツには準備ファイルはありません。
【標準モジュール】Module1
※メンバーページと連携すると、開発したプログラムの内容が表示されます。