Open12

ExcelVBA勉強

minatominato

例題1

ファイルにExcel&データCSVが同梱されているぞ!

Excelのフォーマットシートをコピーし、コピーの指定箇所にCSVから書き写せ!

minatominato

例題2

例題1のCSV→txtファイル(中身はカンマ区切り)

エラーはもれなく都度ダイアログでお知らせしてね、処理は強制終了させちゃおうね

minatominato

①ダイアログからファイルを選択→②CSVを1行ずつ読み込み→③1行をカンマで分割→④エクセルに転記する
という流れが課題で求められていた構造と似ていた
https://www.excelvba.club/entry/2023/01/08/172044

ThisWorkbook.ActiveWorksheet以下略を使ったのだが
(※ちなみにThisWorksheetは存在しないらしい。なんでだよ)
「使用者がもし処理中に別なシート選んだらバグるのでダメ」と言われたので探した
https://www.cellnets.co.jp/takemojuku/blog/2596/

minatominato

数字かどうかを判断する(IsNumber,IsNumeric)

↓一挙に2つ試してくれており分かりやすかった
https://it-dxblog.com/excel-vba-isnumber-isnumeric/

IsNumberをそのまま使うと
「sub または function が定義されていません」
と怒られるし、黄色になるのはSubの行で意味不明だったのだけど↓で解決した。
https://www.automateexcel.com/ja/vba/isnumeric-isnumber-ja/

↓IsNumeric特化
https://uxmilk.jp/48323