ExcelのVBAに関する質問スレ
コード書き込みや作成依頼もOK
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
Excel VBA 質問スレ Part83
https://mevius.5ch.net/test/read.cgi/tech/1749348402/
探検
Excel VBA 質問スレ Part84
2025/10/01(水) 14:36:42.66ID:lecUwKjm
117デフォルトの名無しさん
2025/11/01(土) 10:47:01.86ID:abESDRO+ PythonはてっきりVBE上で使えると思ってたからなぁ
ワークシート上の関数とかじゃ使いづらすぎて拍子抜けだわ
ワークシート上の関数とかじゃ使いづらすぎて拍子抜けだわ
>>116
デフォルトでActiveX無効になったから、置き換えないと支障が出ることが多い
デフォルトでActiveX無効になったから、置き換えないと支障が出ることが多い
119デフォルトの名無しさん
2025/11/01(土) 17:42:27.38ID:Hux2CBJ+ 365に変えてから動かなくなった原因がそれだった
120デフォルトの名無しさん
2025/11/01(土) 18:59:05.05ID:h6jsjnZZ マクロが増えてきてどれがなんのマクロか分かんなくなってきた。間違ったマクロが実行されたEXCELが元に戻らないのも嫌だし、どうしたら良いですか?
121デフォルトの名無しさん
2025/11/01(土) 19:04:29.39ID:xL3BSUWP うまい具合に人のせいにしてください
122デフォルトの名無しさん
2025/11/01(土) 19:35:09.78ID:b8gravi3 間違ったマクロを実行した時にEXCELを元に戻すマクロを作ればいい
123デフォルトの名無しさん
2025/11/01(土) 19:53:55.68ID:+zpxt/zr 適切なマクロを実行するマクロを作る
124デフォルトの名無しさん
2025/11/01(土) 20:11:15.61ID:6pe+t0kU AIに丸投げして聞いたらいい
完璧に教えてくれるよ
完璧に教えてくれるよ
125デフォルトの名無しさん
2025/11/01(土) 22:42:21.33ID:h6jsjnZZ >>121
採用!
採用!
126デフォルトの名無しさん
2025/11/05(水) 14:44:44.11ID:rUtaLWLS >>125
人のせいであっても現状の問題への対応はしなければならないのではないか
人のせいであっても現状の問題への対応はしなければならないのではないか
127デフォルトの名無しさん
2025/11/16(日) 08:35:29.66ID:BUsW0orn ピボットテーブルのスライサーが変更されたとき、
ピボットテーブルを置いているsheetについて
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
を使っていくつかのマクロを実行させるようにしているんだけど、
これが3つあって、関連するクエリーやらをちょっとメンテ作業すると、これも動いてしまうものだから、
いちいちコメントアウト?(頭に ' 付けるヤツ)にして、このマクロを止めている。
これもっと上手いやり方ないかしら?
ピボットテーブルを置いているsheetについて
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
を使っていくつかのマクロを実行させるようにしているんだけど、
これが3つあって、関連するクエリーやらをちょっとメンテ作業すると、これも動いてしまうものだから、
いちいちコメントアウト?(頭に ' 付けるヤツ)にして、このマクロを止めている。
これもっと上手いやり方ないかしら?
128デフォルトの名無しさん
2025/11/16(日) 08:47:46.14ID:Mx/pwiFm デバッグ用定数を定義しておいて、
そのデバッグ用定数の値が特定の値なら動かさない、とかにすれば、
メンテ中の変更が一カ所で済む、とかそういう話?
そのデバッグ用定数の値が特定の値なら動かさない、とかにすれば、
メンテ中の変更が一カ所で済む、とかそういう話?
129デフォルトの名無しさん
2025/11/16(日) 08:48:05.74ID:diBaXt68 よく分からんが、フラグ変数とかじゃダメなん?
130デフォルトの名無しさん
2025/11/16(日) 09:13:04.26ID:bRFFjOtJ どこかのセルをデバッグON/Offのフラグにする
131デフォルトの名無しさん
2025/11/16(日) 09:16:36.49ID:EzK8Q/Ny デバッグ定数を使うかApplication.EnableEventsを一時的にFalseにするか
ちなみにデバッグ定数はシート上に隠しておく形式にして例えばRange("A1").Value = Not Range("A1").ValueみたいなSubをイミディエイトから呼び出すのが個人的には楽
ちなみにデバッグ定数はシート上に隠しておく形式にして例えばRange("A1").Value = Not Range("A1").ValueみたいなSubをイミディエイトから呼び出すのが個人的には楽
132デフォルトの名無しさん
2025/11/16(日) 09:32:54.60ID:BUsW0orn >>128
うーん、クエリー弄っちゃうと修正途中なので
不用意に動いたVBAでデバッグ入って・・・
てのはあるんだけど。
そもそもの
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
を一時的に止める方法はないのかと。
やっぱ、ワークシート上のどっかのセルに「メンテ中」なら "1" でも入力して、これをフラグにして
3つのPrivate Subの中で if then で、1ならそのまま終わるか、Call 以下のマクロを実行するかの分岐処理?
先達らはもっときれいなことやっているのかと・・・
うーん、クエリー弄っちゃうと修正途中なので
不用意に動いたVBAでデバッグ入って・・・
てのはあるんだけど。
そもそもの
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
を一時的に止める方法はないのかと。
やっぱ、ワークシート上のどっかのセルに「メンテ中」なら "1" でも入力して、これをフラグにして
3つのPrivate Subの中で if then で、1ならそのまま終わるか、Call 以下のマクロを実行するかの分岐処理?
先達らはもっときれいなことやっているのかと・・・
133デフォルトの名無しさん
2025/11/16(日) 09:33:47.22ID:EzK8Q/Ny 分かるとは思うけど一応
Public Const IsDebug As Boolean = False '平時
'Public Const IsDebug As Boolean = True 'デバッグ時
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
If IsDebug Then Exit Sub
'ここに処理を記述
End Sub
みたいにするってことね
コメントアウトを楽にするならConstじゃなくて
Public Function IsDebug As Boolean
' IsDebug = True '平時はコメントアウトする
End Function
にするのもアリ
Public Const IsDebug As Boolean = False '平時
'Public Const IsDebug As Boolean = True 'デバッグ時
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
If IsDebug Then Exit Sub
'ここに処理を記述
End Sub
みたいにするってことね
コメントアウトを楽にするならConstじゃなくて
Public Function IsDebug As Boolean
' IsDebug = True '平時はコメントアウトする
End Function
にするのもアリ
134デフォルトの名無しさん
2025/11/16(日) 09:37:59.73ID:EzK8Q/Ny あ、ミスった
シートモジュールだけにまとめるならPublicなConstは使えないから、Const定義を標準モジュールに書くか、PrivateなConstにするかしてね
シートモジュールだけにまとめるならPublicなConstは使えないから、Const定義を標準モジュールに書くか、PrivateなConstにするかしてね
135デフォルトの名無しさん
2025/11/16(日) 09:39:00.23ID:BUsW0orn 言ってみれば、プロシージャのインターロック機構みたいな仕組みかな?
136デフォルトの名無しさん
2025/11/16(日) 09:41:42.45ID:BUsW0orn137デフォルトの名無しさん
2025/11/16(日) 09:41:49.72ID:EzK8Q/Ny そそ
ちなみにどのプロジェクトでもまず最初にこの機構を作る癖を付けておくといろいろ捗るよ
ちなみにどのプロジェクトでもまず最初にこの機構を作る癖を付けておくといろいろ捗るよ
138デフォルトの名無しさん
2025/11/16(日) 13:12:18.31ID:0LN83zrS 最近のyoutube動画観てると
MS Office が web アプリの Office と実質同じ
観たいな説明が多くてうんざりする
MS Office が web アプリの Office と実質同じ
観たいな説明が多くてうんざりする
139デフォルトの名無しさん
2025/11/16(日) 14:23:25.70ID:qgfY8rnj web アプリの Officeは知らん。
どんなの?
どんなの?
140デフォルトの名無しさん
2025/11/16(日) 14:37:50.55ID:WuYYEw3+ Excel for the webとかのことやろ
141デフォルトの名無しさん
2025/11/16(日) 16:08:17.79ID:pZ2suisg 可視化のために色とデータを
一気に出力させたら描写遅延が初回に絶対発生するわ
画面一瞬シェイクさせるのを追加したことで解消
システムを高評価されたのはいいけど他社まで展開されるとは思ってなかったから超強力に作り込んでる
一気に出力させたら描写遅延が初回に絶対発生するわ
画面一瞬シェイクさせるのを追加したことで解消
システムを高評価されたのはいいけど他社まで展開されるとは思ってなかったから超強力に作り込んでる
142デフォルトの名無しさん
2025/11/19(水) 12:39:22.87ID:T8xhcS/6 趣味程度でしかやってないからコーディングのマイルールが中々定まらん
そのせいでメンテナンスしたり新しいプロジェクトを作り始める度にああでもないこうでもないと試行錯誤する無駄な時間が…
ってことで質問なんだけど、みんなが心掛けてるマイルールってなんかある?
ちなみに自分の中で明確なのはWith構文は余程面倒な括りじゃない限り使わない、型指定はAs~より&や$などを優先的に使うとかかな?
例えば型指定の省略形は一般的にはあまりよろしくないことは分かってるけど、うちの環境ではどうせ俺しか触らないしコードがスッキリして好きだからそうしてる
こんな感じで「一般的にはよろしくないとされるルール」でも全然いいので色んなアイデアが欲しいです
そのせいでメンテナンスしたり新しいプロジェクトを作り始める度にああでもないこうでもないと試行錯誤する無駄な時間が…
ってことで質問なんだけど、みんなが心掛けてるマイルールってなんかある?
ちなみに自分の中で明確なのはWith構文は余程面倒な括りじゃない限り使わない、型指定はAs~より&や$などを優先的に使うとかかな?
例えば型指定の省略形は一般的にはあまりよろしくないことは分かってるけど、うちの環境ではどうせ俺しか触らないしコードがスッキリして好きだからそうしてる
こんな感じで「一般的にはよろしくないとされるルール」でも全然いいので色んなアイデアが欲しいです
143デフォルトの名無しさん
2025/11/19(水) 12:57:01.35ID:gC8HGDrL 最近はVBAを直接書くことはあまりなくてPytnonのxlwingsを使うことが多いんだけど、既定のプロパティを使わないとかかな。「VBA コーディング規則」とか「VBA コーディングガイドライン」で検索すると色々出てくるね。
144デフォルトの名無しさん
2025/11/19(水) 13:01:31.21ID:pFGIqcYh コメントは書かない(コメントがなくても理解しやすい命名やロジックにする)
145デフォルトの名無しさん
2025/11/19(水) 19:03:32.46ID:pYKM/3rA 入力チェックやファイル読み書き読み込み等の他で使えそうな処理は汎用化する。
データの入力、加工、出力は処理を分ける。
データの入力、加工、出力は処理を分ける。
146デフォルトの名無しさん
2025/11/19(水) 22:38:56.82ID:cV15jrOu >>142
改行とインデントはVBと同じにしてる
Visual Studioにコピペして自動整形されたやつをVBEに戻したりもしてる
変数名は気分次第だけど、英語の語彙力がないから全角文字も許容しないとすぐに詰む
コメントはできるだけ詳細に書く
改行とインデントはVBと同じにしてる
Visual Studioにコピペして自動整形されたやつをVBEに戻したりもしてる
変数名は気分次第だけど、英語の語彙力がないから全角文字も許容しないとすぐに詰む
コメントはできるだけ詳細に書く
147デフォルトの名無しさん
2025/11/20(木) 08:10:04.82ID:cGqMER0e 会社のVBAならドキュメントの場所をコメントに書いておく
148デフォルトの名無しさん
2025/11/20(木) 09:52:55.59ID:gRH2Ls2k >>144
そのルールだとwhyはどう記すの?
そのルールだと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 のスレも消えてるな
そう言えば ActiveX のスレも消えてるな
152デフォルトの名無しさん
2025/11/25(火) 21:40:54.81ID:AgmnBjOL153デフォルトの名無しさん
2025/11/26(水) 10:05:38.98ID:QKRdq7W1154デフォルトの名無しさん
2025/11/26(水) 14:41:57.77ID:UA8LnUux155デフォルトの名無しさん
2025/11/26(水) 16:54:08.05ID:i+EWuoJl >>153
EXCELとACCESS以外はほとんど需要ないから
EXCELとACCESS以外はほとんど需要ないから
156デフォルトの名無しさん
2025/11/26(水) 18:44:46.44ID:AiiNbb6A 李夫人「ギスギスしてますね」
気軽に会話できるフインキじゃない
気軽に会話できるフインキじゃない
157デフォルトの名無しさん
2025/11/26(水) 21:02:04.46ID:NgA/vaPc 出来上がってたマクロをAIで改良したら動かなくなって色々試したけど結局最初のに戻そうと消して貼り替えたら違うの貼っちゃって元に戻らなくて死にそう。ExcelVBAってバージョン管理どうやったらいいの?
(´・ω・`)どうしよう、あと2日しかない、、
(´・ω・`)どうしよう、あと2日しかない、、
158デフォルトの名無しさん
2025/11/26(水) 21:27:39.98ID:XHc1Lvk5 Rubberduckちゃん使ってActive ProjectをExport、
出力されたファイルをバージョン管理
出力されたファイルをバージョン管理
159デフォルトの名無しさん
2025/11/26(水) 21:52:38.66ID:6HGM8CMx 前任者の作っていったVBAのプロシージャ名がテポドンとかパトリオットとかだわ
タケヤリもある
処理のボリュームと連動してるのがちょっと笑えた
タケヤリもある
処理のボリュームと連動してるのがちょっと笑えた
160デフォルトの名無しさん
2025/11/26(水) 21:57:50.45ID:JxrtDXSM この前テポドンという半グレ集団捕まってたよな
161デフォルトの名無しさん
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のレポジトリにこんな記述があった
Rubberduck isn't a lightweight add-in and consumes a large amount of memory.
github.comのレポジトリにこんな記述があった
162デフォルトの名無しさん
2025/11/27(木) 13:52:52.24ID:2EmBR7sq163デフォルトの名無しさん
2025/11/27(木) 20:59:46.47ID:+1jsb7au >>157
リカバリのことではないけど、コードを修正する前にはマクロブックをコピーしてバックアップはするなぁ
一時、本当によくファイルも壊れてたし
自動でモジュールをエクスポートしてGitで管理ってのもみたことあるけど、プロジェクトをいじるには権限の設定も変更の必要とあるし…
リカバリのことではないけど、コードを修正する前にはマクロブックをコピーしてバックアップはするなぁ
一時、本当によくファイルも壊れてたし
自動でモジュールをエクスポートしてGitで管理ってのもみたことあるけど、プロジェクトをいじるには権限の設定も変更の必要とあるし…
164デフォルトの名無しさん
2025/11/27(木) 21:01:15.19ID:PwMHoPlI 日本語不如意で失礼
165デフォルトの名無しさん
2025/11/27(木) 21:13:09.05ID:JXPCwm5x フォームのレイアウトが壊れたこともあったな
166デフォルトの名無しさん
2025/11/28(金) 04:25:10.05ID:YehK5uv+ フォームやオブジェクトにソース埋め込むとか発想がイカレてる
レスを投稿する
ニュース
- 石破茂氏、「高市さんよくぞ言った」の空気に待った 存立危機事態…考えてはいても「公の場で言うことか」:東京新聞 [少考さん★]
- トランプ氏、日中の対立を懸念 首相に「エスカレート回避を」−日本政府関係者(共同) ★2 [蚤の市★]
- 中国外務省「正式な発言撤回なければ受け入れず」 高市首相は台湾有事「存立危機事態」言及せずも「言及しないことと撤回は別問題」★2 [ぐれ★]
- 【速報】11月の東京都区部消費者物価2.8%上昇 [蚤の市★]
- 【大阪】「ここで死にたい」タワーマンション計画に高齢住民の悲痛な叫び 梅田・茶屋町で進む再開発計画 ロフト閉店で 梅田の東側は… [ぐれ★]
- 【おっぱい】「女性を見つけた瞬間に揉みたいという衝動にかられ…」路上で25歳女性に不同意わいせつ行為か 21歳土木作業員の男を逮捕 [nita★]
- イーノック、そんな装備で大丈夫か?
- 10月の有効求人倍率1.18倍(前月比-0.02)、新規求人数-6.4%、厚生労働省「人手不足でも応募者が少なく、求人疲れが起きている」 [256556981]
- 水道料金、来年から3倍wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww [329329848]
- まだ本気出してないだけおじさん「もう本気が出せない」
- おい、そこのお前
- おまえらはシェパードよりも賢い!
