24/03/07(木)21:21:25 会社で... のスレッド詳細
削除依頼やバグ報告は メールフォーム にお願いします。個人情報、名誉毀損、侵害等については積極的に削除しますので、 メールフォーム より該当URLをご連絡いただけると助かります。
画像ファイル名:1709814085055.png 24/03/07(木)21:21:25 No.1165178644
会社で使うマクロ組んでるんだけど とあるクラスを生成するクラスを生成するクラスを…みたいな入れ子構造になっちゃってるんだけど なんか可読性を上げる方法無いだろうか
1 24/03/07(木)21:29:07 No.1165181992
読むちからを上げる
2 24/03/07(木)21:31:05 No.1165182904
ジェイソンってなんだよ
3 24/03/07(木)21:31:26 No.1165183069
コードがネストされていないなら別にいい ちゃんと説明は書こう
4 24/03/07(木)21:31:51 No.1165183277
ないね 外部資料を作り込むしかない
5 24/03/07(木)21:31:53 No.1165183291
継承できんの?
6 <a href="mailto:s">24/03/07(木)21:38:00</a> [s] No.1165186108
>継承できんの? 多分無理 社員500人ぐらい居るけど VBA触れる人が10人ぐらいしか居ない
7 24/03/07(木)21:38:39 No.1165186401
多分継承ってそういう意味じゃ…
8 24/03/07(木)21:39:51 No.1165186923
ターミネーターがいる
9 24/03/07(木)21:39:53 No.1165186943
クラス継承のことじゃないのか…
10 24/03/07(木)21:41:11 No.1165187520
500人いて10人って嘘だろ…
11 24/03/07(木)21:41:51 No.1165187805
可読性を上げる根本的な方法はそれを知った上で構築していかないといけないものなので 既に資産として積み上げてしまっているなら諦めろ
12 24/03/07(木)21:41:54 No.1165187818
vbaに継承はないよ カプセル化は実現できるけど多態性は無理
13 <a href="mailto:s">24/03/07(木)21:42:49</a> [s] No.1165188190
>多分継承ってそういう意味じゃ… ごめん オフィス田中見てVBAなんとかいじってる雑魚だから許して 多分継承みたいな便利な機能はないと思う
14 24/03/07(木)21:44:03 No.1165188719
昔のプログラミングは全部こんくらい不便だったんだよな
15 24/03/07(木)21:46:06 No.1165189584
スレ「」VBA以外にコーディング経験あるだろ
16 <a href="mailto:powershell">24/03/07(木)21:46:49</a> [powershell] No.1165189926
おれをつかえ
17 24/03/07(木)21:46:57 No.1165189973
書き込みをした人によって削除されました
18 24/03/07(木)21:47:11 No.1165190073
実務から入ってクラス使えてるなら上澄みも上澄みだから頑張れ
19 24/03/07(木)21:47:29 No.1165190206
オブジェクトの生成が入れ子になるのは仕方ないんじゃ?
20 <a href="mailto:s">24/03/07(木)21:48:37</a> [s] No.1165190671
>スレ「」VBA以外にコーディング経験あるだろ JAVAとVBAとVB.NETしかないです
21 24/03/07(木)21:49:31 No.1165191058
VBAでJSON無理に扱わんでも… PowerShellかPowerQuery使いなよ…
22 24/03/07(木)21:50:54 No.1165191676
>ターミネーターがいる ジェイソンもいる
23 24/03/07(木)21:51:17 No.1165191864
ジェイソンvsターミネーターを!?
24 24/03/07(木)21:53:07 No.1165192636
GPT4にこのコードリファクタリングしてよって頼んでみたら
25 24/03/07(木)21:54:53 No.1165193364
ちゃんと図書いて整理しろとしか VBAだからって舐めんな
26 24/03/07(木)21:56:49 No.1165194083
たしかインターフェース使えるから多態は一応できるよ でも1クラスモジュールにつき1クラスしか作れなくてモジュールが増えまくるのでマジで半端な機能
27 24/03/07(木)22:00:30 No.1165195566
引き継ぎできるレベルにしておかないと不幸になるよ
28 24/03/07(木)22:01:02 No.1165195734
(チョットデキルって言ったら面倒事に巻き込まれそうだし黙っとこ)って奴が多分50人くらいはいる
29 24/03/07(木)22:01:09 No.1165195781
VBAのクラスはあらゆる点が半端だから堅牢さとかOOPらしさは早めに諦めて割り切って使った方がいいと思う 標準モジュールをうまく使った方がいい
30 24/03/07(木)22:03:40 No.1165196841
俺はよくわからないままマクロを書いている
31 24/03/07(木)22:05:19 No.1165197471
クラスをたくさん産むクラスの変数名にはmotherってつけよう
32 24/03/07(木)22:06:10 No.1165197771
Power queryはいいぞ
33 24/03/07(木)22:06:39 No.1165197981
>クラスをたくさん産むクラスの変数名にはmotherってつけよう 産まれたクラスの接頭辞にbabyってつけよう
34 24/03/07(木)22:11:51 No.1165200022
苦し紛れにCreateObject("htmlfile")から使い慣れてるJavaScriptで無理くりなんとかしたらJS分かる人には意外と好評だった
35 24/03/07(木)22:12:57 No.1165200442
VBAのクラス機能って下手に使うとびっくりするほど低機能で沼るよね…
36 画像ファイル名:1709817272676.png 24/03/07(木)22:14:32 No.1165201010
キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
37 24/03/07(木)22:16:01 No.1165201587
>1709817272676.png おぞましい
38 24/03/07(木)22:17:22 No.1165202070
使ったことないけどtypescriptでもアドイン作れなかったっけ
39 24/03/07(木)22:17:34 No.1165202159
>苦し紛れにCreateObject("htmlfile")から使い慣れてるJavaScriptで無理くりなんとかしたらJS分かる人には意外と好評だった もうなんのためにVBA触ってるのかわからなくなってウケるよね
40 24/03/07(木)22:18:18 No.1165202457
クラスがクラスを孕み クラスがクラスを産む
41 24/03/07(木)22:18:28 No.1165202537
とあるクラスはクラスが入れ子 クラスクラスのクラスッスー
42 24/03/07(木)22:18:42 No.1165202628
>>クラスをたくさん産むクラスの変数名にはmotherってつけよう >産まれたクラスの接頭辞にbabyってつけよう その場合sisterじゃない?
43 24/03/07(木)22:20:19 No.1165203274
>その場合sisterじゃない? 参ったな motherにする気満々とは
44 24/03/07(木)22:23:00 No.1165204269
構造体はリストに格納できなくてなんで?!ってなる じゃあクラスにするか…とシコシコ作るとなんかめちゃくちゃ記述量が増えてる…
45 24/03/07(木)22:27:48 No.1165206116
生成がNewのことならmain役に全部束ねるのが定石だね コンポジションルートって用語がある 初期化と配線代入は処理本体が始まる前に全部終わらせておいてその後はデータを流すだけでいい状態にしておく