Excel VBA 質問スレ Part84

2025/10/01(水) 14:36:42.66ID:lecUwKjm
ExcelのVBAに関する質問スレ
コード書き込みや作成依頼もOK

次スレは>>980が立てること
無理なら細かく安価指定

※前スレ
Excel VBA 質問スレ Part83
https://mevius.5ch.net/test/read.cgi/tech/1749348402/
144デフォルトの名無しさん
垢版 |
2025/11/19(水) 13:01:31.21ID:pFGIqcYh
コメントは書かない(コメントがなくても理解しやすい命名やロジックにする)
2025/11/19(水) 19:03:32.46ID:pYKM/3rA
入力チェックやファイル読み書き読み込み等の他で使えそうな処理は汎用化する。
データの入力、加工、出力は処理を分ける。
2025/11/19(水) 22:38:56.82ID:cV15jrOu
>>142
改行とインデントはVBと同じにしてる
Visual Studioにコピペして自動整形されたやつをVBEに戻したりもしてる
変数名は気分次第だけど、英語の語彙力がないから全角文字も許容しないとすぐに詰む
コメントはできるだけ詳細に書く
147デフォルトの名無しさん
垢版 |
2025/11/20(木) 08:10:04.82ID:cGqMER0e
会社のVBAならドキュメントの場所をコメントに書いておく
2025/11/20(木) 09:52:55.59ID:gRH2Ls2k
>>144
そのルールだとwhyはどう記すの?
149デフォルトの名無しさん
垢版 |
2025/11/20(木) 19:09:59.75ID:qnTj7J5a
生成AIで出てきたコードをそのまま使う
150デフォルトの名無しさん
垢版 |
2025/11/25(火) 10:36:05.24ID:0uCcBRN1
WordのVBAのスレはありますか?
151デフォルトの名無しさん
垢版 |
2025/11/25(火) 11:10:13.87ID:F0vSFTML
昔はあった気がする
そう言えば ActiveX のスレも消えてるな
152デフォルトの名無しさん
垢版 |
2025/11/25(火) 21:40:54.81ID:AgmnBjOL
VBAなんでも質問スレ Part3
https://mevius.5ch.net/test/read.cgi/tech/1631184381/

ここかなぁ
153デフォルトの名無しさん
垢版 |
2025/11/26(水) 10:05:38.98ID:QKRdq7W1
>>152
ほぼ動いてないみたいですね。
ありがとうございます。
2025/11/26(水) 14:41:57.77ID:UA8LnUux
>>144
>コメントは書かない(コメントがなくても理解しやすい命名やロジックにする)

>>133-134
>あ、ミスった

ミスったじゃねーよボケカス
155デフォルトの名無しさん
垢版 |
2025/11/26(水) 16:54:08.05ID:i+EWuoJl
>>153
EXCELとACCESS以外はほとんど需要ないから
2025/11/26(水) 18:44:46.44ID:AiiNbb6A
李夫人「ギスギスしてますね」
気軽に会話できるフインキじゃない
2025/11/26(水) 21:02:04.46ID:NgA/vaPc
出来上がってたマクロをAIで改良したら動かなくなって色々試したけど結局最初のに戻そうと消して貼り替えたら違うの貼っちゃって元に戻らなくて死にそう。ExcelVBAってバージョン管理どうやったらいいの?
(´・ω・`)どうしよう、あと2日しかない、、
2025/11/26(水) 21:27:39.98ID:XHc1Lvk5
Rubberduckちゃん使ってActive ProjectをExport、
出力されたファイルをバージョン管理
159デフォルトの名無しさん
垢版 |
2025/11/26(水) 21:52:38.66ID:6HGM8CMx
前任者の作っていったVBAのプロシージャ名がテポドンとかパトリオットとかだわ
タケヤリもある
処理のボリュームと連動してるのがちょっと笑えた
2025/11/26(水) 21:57:50.45ID:JxrtDXSM
この前テポドンという半グレ集団捕まってたよな
2025/11/27(木) 12:55:16.44ID:s8MajZ9+
Tips
Rubberduck isn't a lightweight add-in and consumes a large amount of memory.
github.comのレポジトリにこんな記述があった
162デフォルトの名無しさん
垢版 |
2025/11/27(木) 13:52:52.24ID:2EmBR7sq
規模にもよるけど >>157 の言ってる話くらいなら
Excel の VBA エディタを使わずに
完全に別のテキストエディタをメインで使用して
都度 Excel にコピペして使うのが正しい
2025/11/27(木) 20:59:46.47ID:+1jsb7au
>>157
リカバリのことではないけど、コードを修正する前にはマクロブックをコピーしてバックアップはするなぁ
一時、本当によくファイルも壊れてたし
自動でモジュールをエクスポートしてGitで管理ってのもみたことあるけど、プロジェクトをいじるには権限の設定も変更の必要とあるし…
2025/11/27(木) 21:01:15.19ID:PwMHoPlI
日本語不如意で失礼
2025/11/27(木) 21:13:09.05ID:JXPCwm5x
フォームのレイアウトが壊れたこともあったな
166デフォルトの名無しさん
垢版 |
2025/11/28(金) 04:25:10.05ID:YehK5uv+
フォームやオブジェクトにソース埋め込むとか発想がイカレてる
2025/11/28(金) 19:18:54.56ID:vLpOhufo
>>157
終わるまで帰らないでやるしかないんじゃね
168デフォルトの名無しさん
垢版 |
2025/11/29(土) 07:29:36.55ID:BQ0UyPY+
なぜ問題がわかっていて修正しないのか
169883
垢版 |
2025/11/29(土) 10:18:21.57ID:iIxCzldN
バックアップ取らないでいじるとか狂気の沙汰としか思えんのだが
2025/11/29(土) 19:12:35.55ID:TehwSFPe
昔はファイル保存しないで動かしたらPCがフリーズして
リセットしたら全部消えたみたいな事だな
初心者あるある
171デフォルトの名無しさん
垢版 |
2025/11/29(土) 21:26:22.14ID:n05F73FJ
問題が解決すると仕事なくなるから
2025/11/29(土) 21:37:44.45ID:OyeyDU4l
みんな失敗しながら覚えたんだよ
173883
垢版 |
2025/11/30(日) 12:32:05.33ID:Rjr5dfQ3
ループの脱出条件入れ忘れてExcel落とすしかなくなるのは割とよくある
2025/11/30(日) 13:21:22.00ID:q4Ox41Rw
その程度のミスは今だったら実行前にAIに聞いたら完璧に指摘してくれる
2025/11/30(日) 15:30:09.72ID:HluJBWz5
Breakキーおしたれや
2025/11/30(日) 20:47:11.89ID:n9jb1y8V
Pauseキーでも
177883
垢版 |
2025/12/01(月) 00:49:03.41ID:2rhS7iMC
PauseもBreakも聞かない時あるんだよ
Do Until EOFとかやって MoveNext忘れたりとか
178デフォルトの名無しさん
垢版 |
2025/12/01(月) 01:14:39.29ID:v+ozH3Tb
Excel落とす以外でこれ止められる方いますか

Do
MsgBox ""
Loop
2025/12/01(月) 08:20:22.98ID:r9R4xsMu
>>178
MsgBoxはイベント待ちなんだから普通にPauseかBreakで止まる
2025/12/01(月) 08:28:00.33ID:tcT2iRS+
昔はCtrl+Breakで止めてた気がするんだけど、いつからBreakやPauseでも止まるようになったんだろう
2025/12/01(月) 08:39:52.73ID:ubTuQfiQ
最小限のコードで試したらBreakでちゃんと止まったんだが
Sub a()
Do
Loop
End Sub
2025/12/01(月) 09:07:39.80ID:8UMxtbvd
ESCで止めてたワ
183デフォルトの名無しさん
垢版 |
2025/12/01(月) 09:14:44.31ID:Yc6N6c2G
184デフォルトの名無しさん
垢版 |
2025/12/01(月) 09:15:32.34ID:Yc6N6c2G
https://www.tv-asahi.co.jp/doraemon/story/0876/
2025/12/01(月) 13:43:06.07ID:HDTmHOXC
3DゲームQの片仮名版
2025/12/01(月) 22:04:21.94ID:IZW/WYcf
(ヽ´ω`)何とか休日も潰して復旧間に合いました⋯。
うちのVBAはstopって書いてあるテキストを同じフォルダに作ると止まるっていう謎仕様をAIが作ってくれました。これはよくある手法なのかな?全然止まんないけど。
187883
垢版 |
2025/12/01(月) 22:17:37.20ID:2rhS7iMC
>>186
乙かれ 次はバックアップ忘れんなよ
2025/12/01(月) 23:08:53.03ID:ageADKO+
>>186
おつかれさま
老婆心ながら、AIに頼るのは自分自身が問題解決能力を身につけてからのほうがよいかもね
189デフォルトの名無しさん
垢版 |
2025/12/02(火) 03:17:53.87ID:9d4GAP4H
バックアップツールインストールして
バックアップ作業始めた瞬間に
PC壊れて間に合わなかったことがあるな
2025/12/02(火) 04:11:23.33ID:dszzNCzC
マーフィーの法則だな
2025/12/03(水) 02:25:08.80ID:oIB/w2I6
マーフィーに言われなくても判ってたことが多い
2025/12/03(水) 02:28:54.34ID:8lNTA0Gx
エディー
2025/12/03(水) 06:00:36.74ID:8R4Psvx3
おっ知らんのか
2025/12/03(水) 11:42:47.73ID:G3Cx7y7o
現象に「名前を付けろ」とは良く言ったもので
195デフォルトの名無しさん
垢版 |
2025/12/04(木) 12:17:45.10ID:zhXSMovz
バックアップの負担がとどめになったり
普段アクセスしない不良領域にアクセスした事で検出されたり
あるある
2025/12/04(木) 20:42:16.32ID:XsR8CO/+
「いくつかの方法の中で、もし間違った方法があるなら、人はそれを必ず選ぶだろう」
俺じゃんww
2025/12/05(金) 14:43:51.04ID:W90mTSw7
>>195
トドメの一撃ですねわかります
2025/12/05(金) 17:07:05.58ID:uKBTUnuN
どどめ色
2025/12/05(金) 22:53:44.98ID:itJCEMXW
ゴミ箱から消したExcelのデータを完全に消すVBAの作り方教えてください
2025/12/05(金) 22:58:24.82ID:nmx3VDnP
Win32APIのSHEmptyRecycleBinを使えば良い
2025/12/05(金) 23:01:52.33ID:itJCEMXW
>>200
すげぇぇー!ありがとうございます。
2025/12/06(土) 08:22:07.86ID:Ns9W5jkq
最近勉強も兼ねて基本的なオブジェクトのラッパークラスを作るのにハマってる
せっかくだからある程度できてきたら実用もしていきたいんだけど、親子関係とかにこだわるとクラスモジュールがどんどん増えるからプロジェクトを作る度にインポートするの面倒だな
それに自作クラスに慣れちゃうと元オブジェクトの使い方を忘れて困りそうだしな

あれ?じゃあなんで作ってるんだ…?
203デフォルトの名無しさん
垢版 |
2025/12/06(土) 09:06:30.20ID:CSgKSHqQ
>>202
自作ライブラリは何年か経つと自分すら使い方がわからなくなる
情報の溢れてる公式APIに勝るものなし
204デフォルトの名無しさん
垢版 |
2025/12/06(土) 09:41:31.06ID:t4ge40oj
>>200-201
「削除してゴミ箱にあるExcelのデータを消す」これはSHEmptyRecycleBinでいけるが
「ゴミ箱から消したExcelのデータを完全に消す」これはSHEmptyRecycleBinでは無理だろ
>>202
https://smdn.jp/programming/tips/emptyrecyclebin/
2025/12/06(土) 12:26:26.84ID:qRv+I2CP
自分も引っかかったけど、
「ゴミ箱から消した/Excelのデータを」ではなく
「ゴミ箱から/消したExcelのデータを」なのかも
伝わりにくいか…
206デフォルトの名無しさん
垢版 |
2025/12/06(土) 14:16:49.57ID:ARinuXXT
消したExcelのデータをゴミ箱から完全に消す
207デフォルトの名無しさん
垢版 |
2025/12/06(土) 15:09:02.17ID:kcqrt2m8
EXCELのファイルを選別するのができないのか?
208デフォルトの名無しさん
垢版 |
2025/12/07(日) 01:00:20.13ID:lLFPKabv
よくある質問者が既にいないのに話題を続ける奴が残る感じ
209883
垢版 |
2025/12/07(日) 01:26:47.58ID:dEBXo/lp
質問者が来るとバカ呼ばわりするバカが居るしなー
210デフォルトの名無しさん
垢版 |
2025/12/07(日) 08:10:22.37ID:b/YhOsIH
と、バカが申しております。
211デフォルトの名無しさん
垢版 |
2025/12/07(日) 09:34:45.36ID:HnfNj0pp
>>210
このハゲ!🦲
2025/12/07(日) 12:14:53.22ID:D6Rcvjje
完全に消したいです!
213デフォルトの名無しさん
垢版 |
2025/12/07(日) 12:16:43.46ID:gSHrQBcc
format
2025/12/07(日) 13:36:38.71ID:jjhMYiFl
formatで完全に消えるわけじゃないけどな
215デフォルトの名無しさん
垢版 |
2025/12/07(日) 14:00:51.18ID:wjXVhGdJ
ドリルを使うのが定番らしい
216デフォルトの名無しさん
垢版 |
2025/12/07(日) 15:18:24.12ID:WSDO/8Sv
ドリルすんのかい
2025/12/07(日) 16:34:53.96ID:4wunMZ1B
さんすうドリル
2025/12/07(日) 19:23:37.86ID:qO8AVoFB
完全に消すなら溶鉱炉に突っ込むしか
2025/12/07(日) 20:10:29.28ID:D6Rcvjje
ディスククリーンアップでも消えないんだっけ
出荷状態に戻したらアカウントも切えるしな
220デフォルトの名無しさん
垢版 |
2025/12/07(日) 20:16:50.80ID:0JHpnbXH
米国国防総省準拠方式DoD5200.28-Mがいいと聞いた
221デフォルトの名無しさん
垢版 |
2025/12/08(月) 11:34:41.23ID:ohFCSp2s
I'll be back! b
で 3回ほど上書き
最後に念のため塩水か酸に3年程漬ける
2025/12/08(月) 13:33:42.25ID:cI+IAhW6
まず服を脱ぎます
2025/12/08(月) 20:35:17.92ID:AM3PfGHm
DLいるけどコマンドで消せそう
2025/12/08(月) 20:43:32.54ID:7foZRiLq
ずっと昔、HDDが小さかった頃はバッチで無限ループして、意味のない内容のファイルで領域をいっぱいに上書きして、ってやってたな
2025/12/08(月) 21:04:15.75ID:Y7FlZnC1
スレ違いの話題をいつまでも続ける老人会
2025/12/08(月) 23:03:55.20ID:p8pOo59T
https://www.youtube.com/watch?v=eFgzMPVZdVs
227デフォルトの名無しさん
垢版 |
2025/12/09(火) 08:00:02.65ID:Md263dWo
変数名は_で区切るのか、それとも頭文字小文字頭文字大文字で区切るのか、どう命名するのがオシャレで今時なのでしょうか?
228デフォルトの名無しさん
垢版 |
2025/12/09(火) 08:20:04.79ID:Md263dWo
沢山の引数をTypeでまとめて引き渡すのは普通の事なのでしょうか?
沢山の書籍やネットの記事を見てきましたが、その様なコードは一切見た事がありません
229デフォルトの名無しさん
垢版 |
2025/12/09(火) 08:20:48.43ID:hJ7ZW6qG
言語である程度おすすめが示されていることもあるけど、VBAってどうだっけ? クラス名はアッパーキャメルケースにする人が多いけど、変数・関数は好みじゃない?
Javaの経験がある人はキャメルケースを好み、Pythonの経験がある人はスネークケースもしくは区切りの _ も省略したjointwordsスタイルを好む人が比較的多いとか、そういう傾向はあるかもしれないけど。
230デフォルトの名無しさん
垢版 |
2025/12/09(火) 08:42:54.43ID:Md263dWo
小文字大文字は違和感があって、本当にこれでいいのかなという感じです
2025/12/09(火) 08:43:11.33ID:Cqli7Rfr
マイコォソフトがハンガリアン記法に傾倒してた時代の言語だからアッパーキャメルケース
232883
垢版 |
2025/12/09(火) 08:52:16.60ID:pNV+FLYU
>>228
C言語育ちのワイは普通にやる
2025/12/09(火) 10:04:40.09ID:l/Nn/UyZ
>>227
まず正常に動くことが優先で名称はその次のステップだろ
次にチームで共有するか、後任に引き継いでいくのか、個人だけの使用かで影響を気にするし
自分以外が使わないならただの自己満足だし好きにすれば良かろう
2025/12/09(火) 10:26:43.91ID:bIlCpHR7
BASICの歴史を尊重してフル大文字8文字以内です
2025/12/09(火) 10:46:42.10ID:oTj8LC3z
MS公式VBAマニュアルはC#方式になってるな
2025/12/09(火) 11:01:16.89ID:7JykU8Yz
変数名の表記法の一例
【camelCase】2番目以降の単語の先頭を大文字にする。最初を小文字にするのは関数名などと区別するため
【lowerCamelCase】camelCaseと同じ。上に飛び出た大文字がラクダのこぶのようだからキャメル
【biCapitalization】camelCaseと同じ
【interCaps】camelCaseと同じ
【mixedCase】camelCaseと同じ
【UpperCamelCase】各単語の先頭を大文字にする
【PascalCase】UpperCamelCaseと同じ
【UpperPascalCase】UpperCamelCaseと同じ
【snake_case】全部小文字、アンダーバーで区切る。文字数が増えて細長くなるからヘビ
【lower_snake_case】snake_caseと同じ
【lower_case_with_underscores】snake_caseと同じ
【UPPER_SNAKE_CASE】全部大文字、アンダーバーで区切る
【kebab-case】全部小文字、ハイフンで区切る。ハイフンがケバブの串
【lisp-case】kebab-caseと同じ
【dot.case】全部小文字、ドットで区切る
【システムハンガリアン記法】strNameなど、型を最初につける
【アプリケーションハンガリアン記法】indexNameなど、用途を最初につける
【ハンガリアン記法】システムハンガリアンと同じ、とする場合が多い
237デフォルトの名無しさん
垢版 |
2025/12/09(火) 17:32:40.15ID:Md263dWo
他の人が見た時に「なんだこの変数名だせーな」と思われるのが恥ずかしいので
2025/12/09(火) 17:45:37.83ID:VGSDNKqb
>>237
それは適切な言葉(単語)を使ってるかどうかの問題では
大文字とか区切り記号以前の話だと思うけど
239デフォルトの名無しさん
垢版 |
2025/12/09(火) 17:45:48.01ID:MYO7WY85
アンダーバーで始まる変数はどういう意図があるのですか?

例えば、
_value
_name
_aho
240デフォルトの名無しさん
垢版 |
2025/12/09(火) 17:57:04.44ID:Md263dWo
変数名やメソッドの名前をAIに考えてもらうという事を学びました
241デフォルトの名無しさん
垢版 |
2025/12/09(火) 18:04:10.60ID:qbLtmdIz
アンダースコアから始まる名前は、特定の言語機能と結び付けられていたり、システムとかフレームワークで使われることが多いので、特に理由がなければプログラマは使わない方がベターというのはある程度共通認識なんじゃない?
2025/12/09(火) 18:32:44.02ID:l/Nn/UyZ
>>239
アンダーバーを入力した際に候補が表示されれば選択するだけで変数を入力できるのだが
excelだとアンダーバーで始まる変数は作れないがvbではそれができる
2025/12/09(火) 18:36:12.70ID:oTj8LC3z
JavsScriptだとアンダーバーはprivate変数の意
244デフォルトの名無しさん
垢版 |
2025/12/09(火) 18:46:46.99ID:Md263dWo
AIに「簡潔な数学の数式を教えてください」と尋ねてそれを利用する方法に気付いたのですが、有効でしょうか?
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況