Excel VBA 質問スレ Part83 (612レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
198(2): デフォルトの名無しさん [] 2025/06/21(土) 21:46:00.83 ID:ntnP1SjV(1/2) AAS
どうなんだろね
シートモジュールはクラス(のインスタンス)のようなものだと思っていて、そこで完結・隠蔽できるなら、メンバ変数みたいに書いてもいいのかも
226(2): デフォルトの名無しさん [sage] 2025/06/24(火) 17:26:03.83 ID:PRrta3wT(1) AAS
プリンタの仕様だから仕方無いのもある
某XEROX社の安い方の複合機だと印刷可能範囲の上端だったか下端だったか7mmとかいうのもある
だから上の方で全周7mmで設定しとけばかなりクリアする可能性があがる、と書いた
しかし、そんなに1ページにみっちみちに詰め込まなきゃならない書類って、逆に効率悪いような
382: デフォルトの名無しさん [sage] 2025/07/07(月) 14:15:38.83 ID:quoGln+a(1) AAS
>>379379(2): デフォルトの名無しさん [sage] 2025/07/07(月) 09:23:50.46 ID:GhKlbyJu(1/2) AAS
だが、Copilotにプログラムを作らせると、こんなにも原始的でバグだらけなのであった
しかもこれだとクソ遅い
【設問】以下はVBAでCSVファイルを開いて読み込むプログラムである。バグを指摘せよ。
FilePath = "C:\Users\YourName\Documents\sample.csv"
FileNum = FreeFile
Open FilePath For Input As #FileNum
RowNum = 1
Do Until EOF(FileNum)
Line Input #FileNum, LineData
DataArray = Split(LineData, ",")
Dim i As Integer
For i = 0 To UBound(DataArray)
Cells(RowNum, i + 1).Value = DataArray(i)
Next i
RowNum = RowNum + 1
Loop
Close #FileNum
ChatGPTだとこんな感じですね。
そのまま貼り付けたので全角も見てくれてる。
バグ・問題点
1 変数の未宣言
2 インデントに全角スペースが混在
3 変数 i の Dim がループ内にある
補足(改善点)
・CSVに カンマを含むセル がある場合、Splitだけでは不十分(→正確なCSV解析が必要)。
・ファイル存在チェック (Dir(FilePath) など) を入れるとより堅牢になります。
・Shift-JIS以外の文字コード(例:UTF-8 BOM付き)は Open では正しく読み込めないことがあります。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.036s