- 1 名前:デフォルトの名無しさん [2025/01/24(金) 03:31:15.25 ID:l239yW+P.net]
- ExcelのVBAに関する質問スレ
コード書き込みや作成依頼もOK 次スレは>>980が立てること 無理なら細かく安価指定 関連スレ Excel VBA 質問スレ Part79(ワッチョイあり) https://mevius.5ch.net/test/read.cgi/tech/1674875532/ Excel VBA 質問スレ Part80(ワッチョイあり) https://mevius.5ch.net/test/read.cgi/tech/1700826110/ ※前スレ Excel VBA 質問スレ Part79 https://mevius.5ch.net/test/read.cgi/tech/1674874007/ Excel VBA 質問スレ Part80 https://mevius.5ch.net/test/read.cgi/tech/1685489018/ Excel VBA 質問スレ Part81 https://mevius.5ch.net/test/read.cgi/tech/1713416618/
- 331 名前:デフォルトの名無しさん [2025/04/17(木) 21:50:56.16 ID:KzCUo7uK.net]
- vbaも近代化改修が行われてPower VBAになってスクラッチ開発できる様になったらいいのにな
これが本当のvisual basic
- 332 名前:デフォルトの名無しさん [2025/04/18(金) 04:48:09.14 ID:L6zyvyKf.net]
- vb6で終わってvb.netやc#になったから今更それはないな
ついていけない人は欲しいだろうが
- 333 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 06:15:21.95 ID:1nv1ghXV.net]
- この期に及んでVBAに止まっている連中に仮に新しいものを提供したところで移るわけがない
- 334 名前:デフォルトの名無しさん [2025/04/18(金) 06:43:13.37 ID:ky+/acoM.net]
- PythonだったらそんなにExcelを高速に処理する事ができて、しかも楽にコードが書けるのですか?
- 335 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 07:51:27.87 ID:zoX3HVfE.net]
- 処理の速度は変わらないけど楽にはなる
- 336 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 10:01:29.16 ID:4ybR59hN.net]
- VBAが構文的にしんどいのって、
・ 変数の宣言と初期化がいっぺんに出来ない。初期化に(Let/)Setが必要。 ・ 関数と手続とが構文上区別されている。 ・ コレクション・コンテナやクラスが使いにくい。 ーー辺りかな。 他の言語ではとうに克服されてまったく気にしなくても良くなっていることがVBAでは克服されておらず、そのツケをコードを書く側が負担させられている感がストレスかなぁ。書けなくはないけど楽には書けないし、書けば書くほどストレスが溜まって嫌いになる言語だという人も多そう。 逆に言えば、そんなの気にならない、所詮構文でしょって人も少なくないだろうとは思うけど。
- 337 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 10:18:33.71 ID:5qwyQLY6.net]
- どうでもいいな
そんなことが問題になるほどの規模でVBAを書く必要があるならその設計の方が問題
- 338 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 12:01:58.63 ID:6yGBiO+t.net]
- 難解な関数が組める事を自慢したい馬鹿、VBAが書ける事を自慢した馬鹿のどちらも各企業にいるよなw
Excelなんて単なる事務道具だぞ
- 339 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 12:24:40.01 ID:zoX3HVfE.net]
- >>334
・ 変数の宣言と初期化がいっぺんに出来ない。初期化に(Let/)Setが必要。 オブジェクト変数じゃなければいっぺんにできるし、 オブジェクト変数だとしてもセミコロンで一行に書くイディオムで実質いっぺんにやれる ・ 関数と手続とが構文上区別されている。 Excelにおいては一緒の方がバグ生むでしょ alt+F8押したときに関数出てくるのはマズくない? ・ コレクション・コンテナやクラスが使いにくい。 これは同意 とはいえ不満のほとんどはIDEと統合されてなければ解決するよね エディタの機能に任せれば良いだけで、それを使えないVBEでの開発になるからしんどい
- 340 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 13:15:43.40 ID:4ybR59hN.net]
- 宣言と初期化については、セミコロンで複数ステートメントを並べて書けるから実質同じというのはどうかなぁ。オブジェクトか非オブジェクトかで書き方を変える必要があること自体がストレスじゃない? 揃えるなら非オブジェクトの方にLetをつける方向性になるけどそれも馬鹿馬鹿しいし。
マクロ一覧については、定義ステートメントの予約語を分けなくてもマクロとして使える関数をピックアップすることは可能だったのではと思う。 あと、関数・手続の呼び出し(Callステートメント)の構文もちょっと擁護できないかな。 VBEの機能がいまいちというのは同感だけど、構文上の書きやすさというのはそれとはまた別の次元の話。また、構文上の問題というのはプログラムの規模とはあまり関係ない話で、ごく短いプログラムでもストレスはストレスだと思う(長いプログラムならストレスの総量が閾値を超えてしまうような場合でも、短いプログラムなら何とか耐えられるとかそういうことはあるかもしれないが)。 結局、Excel組み込みというVBA唯一最大のメリットのために、構文の書きにくさ・VBEの機能の低さに目をつぶれるかという話なんでしょ。他の選択肢もある場面であえて好んでVBAを選ぶ理由はほとんどないけれど、Excel VBA以外に選択肢がないという状況は結構あるからそういう状況で今後も生き残っていくということだと思う。
- 341 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 13:53:14.91 ID:ooz79whL.net]
- Copilotがくそ過ぎる
Microsoftはこれでいいのかよ ChatGPTの独壇場だなVBAは
- 342 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 14:54:36.62 ID:5qwyQLY6.net]
- VBA使い含めMSの客のボリューム層なんて、大半は最新のAIが本気出したら簡単に代替できるような仕事しかしてないからね
今のMSのビジネスモデルが完全にユーザー数に対する課金に依存している以上、利益相反関係にあるからCopilotはあまり賢くできないのよ
- 343 名前:デフォルトの名無しさん [2025/04/18(金) 17:52:29.83 ID:08LfVk9Y.net]
- CopilotはchatGTPです
- 344 名前:デフォルトの名無しさん [2025/04/18(金) 18:28:34.92 ID:aM6hZ3c/.net]
- デビルチョップはパンチ力です
- 345 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 18:46:19.31 ID:CBG0ye4/.net]
- >>338
宣言と初期化の件、実質同じなんて言ってないのに勝手に書き換えないでほしい 揃える必要あるか? ポインタかそうでないか、それぞれをどう宣言するかって話なんだから、 char foo = 'a'; char* bar = "a"; これらが書きやすいって人もいれば分からんって人もいて、想定ユーザーをどうするかってだけ VB(A)はそれらが分からんって人を対象にした言語 マクロのピックアップにしても、いちいちVBAをパースするにあたり、Subの行だけ拾ってくれば済む処理で他のことさせるってことだろ? かつて.xlsファイルはフロッピーに保存されてたんだぞ 当時から今みたいな富豪的プログラミングが可能だったわけではない 動作速度とのバランスを考えた設計と、こだわり続けた互換性の上に今がある Callステートメントの何が気に食わないの?
- 346 名前:デフォルトの名無しさん [2025/04/18(金) 18:48:37.87 ID:HZQ72SS6.net]
- >>343
また知ったかの馬鹿
- 347 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 20:06:21.64 ID:t3zKaoZR.net]
- char foo = 'a';
char* bar = "a"; がわからんってレベルの人が、オブジェクトについてのみ初期化にSetキーワードが付けるVBAの構文の方が分かりやすいねって言ってくれるんだろうか。とてもそうは思えないが。 マクロのピックアップも、富豪的プログラミングのような大層な概念持ち出すような話なのかな? 関数か手続か、戻り値を使うか使わないかでCallを付けたり付けなかったり、丸括弧を付けたり付けなかったりするCallステートメントの構文は救いようがないと思っていたんだけど、不満がないって人も居るのね。他の言語で関数呼び出しの構文がそんなふうになったら開発者の正気を疑うレベルだと思うんだけど。VBAの場合は配列の要素参照に丸括弧を使う関係上やむを得ずそうなったんだろうとは思うけど、構文として碌でもないのは否定できないと思うんだけどね。 互換性の点はわかるよ。というか、互換性を保つ必要があるからどんなに構文が酷くても手を入れることができないってことでしょ。その上で、VBAの構文は(少なくとも今の目で見れば)ストレスフルであると書くことが悪いこととは思わないが。もちろん、気にならないって人は、それはそれでいいと思うけどね。
- 348 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 20:11:40.45 ID:ooz79whL.net]
- 早口でとは言わんが要点をまとめられず仕事もコードの中身もそうなんだろうな
- 349 名前:デフォルトの名無しさん mailto:sage [2025/04/18(金) 21:24:08.39 ID:T6Kb2Yr1.net]
- こういうお気持ち表明が多すぎて収集つかないからMSは仕様変更しないんだろ
- 350 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 02:21:22.02 ID:spgp5dv5.net]
- 今の常識で27年前の仕様にいちゃもん付けるPCの大先生w
- 351 名前:デフォルトの名無しさん [2025/04/19(土) 02:31:50.20 ID:Az00DO6L.net]
- ただの知ったかの馬鹿だぞ
- 352 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 02:39:29.56 ID:spgp5dv5.net]
- Cの最新規格は7~8年前の仕様、
COBOLですら9年前だ 死体蹴りもいいとこ
- 353 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 03:16:05.27 ID:ChBOY4Tr.net]
- Callだのなんだの好きに書けばいいんじゃね?
何で目くじら立てて些細な事で喧嘩になるのか理解できん
- 354 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 03:23:20.02 ID:oOgY5W1p.net]
- 行番号つけないと落ち着かない
イライラする 文字は大文字じゃないと うがーってなる
- 355 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 04:08:23.94 ID:spgp5dv5.net]
- >>351
喧嘩…?
- 356 名前:デフォルトの名無しさん [2025/04/19(土) 06:15:57.40 ID:D0kitORW.net]
- >>343 の言う判らん人が使う言語は Rust
- 357 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 09:42:55.62 ID:ozZ7t8ZT.net]
- 大衆食堂に来ておきながら、年代物のワインが無い!だの、ナイフフォーク揃えて無い!だの
前菜とスープが先だろ!とか文句付けてるようなもの 単純な+-ドライバーにラチェット機構が付いてない!とか罵ってるようなもの それぞれ出自も違うんだし目指すところも違うんだから、適材適所、使いようなだけ ま、単なるクレーマー気質ではある さりとて、それならソッチ側のプログラミングなら達人レベルなのか?っつーとそうでも無いんだろう どっちつかずの中途半端な知識だけだから、つべこべ文句言って毒吐いてじぶんを紛らわせてるだけのかわいそうなひと
- 358 名前:デフォルトの名無しさん [2025/04/19(土) 09:51:01.47 ID:D0kitORW.net]
- >大衆食堂
ぷぷぷ
- 359 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 11:23:58.79 ID:H/S6NqJY.net]
- 最新流行の言語や関数型の言語にしかないような構文なら年代物のワインやカトラリーのセッティングになぞらえるのもまだわかるけど、上で挙げたのってそんな高級なもんじゃないでしょうに。
何かあれだな、JavaとかPythonとかのいわゆる普通の言語の使用者が、最新流行の言語や関数型言語の使用者からの構文マウントに対して反発したり揶揄したりする構図はよく見かけるけど、その低レベル版みたいなことになっている気がするな。
- 360 名前:デフォルトの名無しさん [2025/04/19(土) 11:45:41.65 ID:LYrpxUmI.net]
- まあ、ヒアドキュメントや置換なんかはほしい
数式の記述なんて書きやすいと思っている奴はいないだろう
- 361 名前:デフォルトの名無しさん [2025/04/19(土) 11:50:41.10 ID:UV/Amstd.net]
- Open AIは人格や口調を意識してAIの開発なんてしていないだろうに、Copilotに「妹キャラでお願いします」って言うと妹キャラの口調になるから本当に凄いなと思う
- 362 名前:デフォルトの名無しさん [2025/04/19(土) 11:57:24.89 ID:UV/Amstd.net]
- >>355
VBAは大衆食堂ではないから属人化(しやすい)と言われている 年代物のワインならある 私は最近複数行選択からのタブでインテンドが簡単にできると知った 一企業でVBAができる人はあちこちの部署から自動化のツール作成を請け負っていると思う この「あちこちの部署から仕事を請け負う」ということが属人化の正体だと思う なぜなら幅広く業務に精通している凄い人は少数で他にいないから
- 363 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 13:05:07.54 ID:viAmSNvm.net]
- PowerAutomate職人も最近は重宝されとるな
使いやすい便利な奴隷として
- 364 名前:デフォルトの名無しさん [2025/04/19(土) 13:19:59.45 ID:YEMv3hB3.net]
- >>359
妹キャラのデータはあるからな データに無いキャラでって言われて、無いと言われるか似たようなのにされるかは知らんけど
- 365 名前:デフォルトの名無しさん [2025/04/19(土) 13:53:56.21 ID:ICSNq8lF.net]
- もう定年退職してる二代前の担当してた人の作ったVBAをメンテしながら使ってるけどプロシージャ名の乱れ雪月花とか薪割りダイナミックとかはそのまま変えてない
パリィとかもあったし変数も癖が強い でも処理が合理的で面白い
- 366 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 14:46:22.82 ID:v8N9YOUA.net]
- 弘法筆を選ばずだな
- 367 名前:デフォルトの名無しさん [2025/04/19(土) 15:50:48.35 ID:UV/Amstd.net]
- >>362
しかもこっちの呼び名を、お兄ちゃん(お姉ちゃん)呼びしているんだよ お姉ちゃん(レズ)までサポートしているんだよ
- 368 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 19:00:19.25 ID:KJMdl2bF.net]
- 弘法も始めは筆おろしから
- 369 名前:デフォルトの名無しさん [2025/04/19(土) 19:34:36.21 ID:UV/Amstd.net]
- >>366
へっ?ふっ、筆おろし?急に何を言い出すの!?お兄ちゃん!
- 370 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 19:59:47.58 ID:o+j+V/MM.net]
- こ、こ、こ、こ、弘法ちゃうわ!
- 371 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 20:45:49.41 ID:ozZ7t8ZT.net]
- どうしてソッチだけに食い付くんだか 只の例えだろうに
例えが気に入らないなら、じぶんなりの例えを書きゃあいいのに ドライバーの方に食い付かない辺りでお里が知れるってもんだ
- 372 名前:デフォルトの名無しさん [2025/04/19(土) 20:53:32.98 ID:UV/Amstd.net]
- >>369
+と-😳 何を急に言い出すの!?お兄ちゃん!
- 373 名前:デフォルトの名無しさん mailto:sage [2025/04/19(土) 20:59:39.26 ID:uzlTl9vw.net]
- 只
M コラヤメタマエ
- 374 名前:デフォルトの名無しさん [2025/04/20(日) 13:50:10.98 ID:RiHDJnuQ.net]
- 初期:
面白い人が面白いことを書く 中期: 面白くない人が面白いものを見に来る 終末期: 面白くない人が面白くないものを書き始める
- 375 名前:デフォルトの名無しさん [2025/04/20(日) 13:50:58.56 ID:RiHDJnuQ.net]
- 面白い人が面白いことをする
↓ 面白いから凡人が集まってくる ↓ 住み着いた凡人が居場所を守るために主張し始める ↓ 面白い人が見切りをつけて居なくなる ↓ 残った凡人が面白くないことをする ↓ 面白くないので皆居なくなる
- 376 名前:デフォルトの名無しさん [2025/04/20(日) 13:51:15.67 ID:RiHDJnuQ.net]
- 1、スレッドが立つ。
2、技術のある人間がAAを提供して盛り上げる。 感動を
- 377 名前:≠゚て人が集まってくる。
3、オリジナルAAを書ける人間が乗ってきてさらに盛り上げる。最盛期。 4、盛り上がりに乗じて何も書けない魯鈍と白痴が寄ってきてスポイルする。 ←いまここ 彼らの無駄な愛着が逆効果を及ぼし、スレッドのレベルが著しく低下。 5、飽きて大勢が去っていき、行き場の無い魯鈍と白痴が残される。 低レベルな自慢・偏見の陳列、煽りあい、無駄な罵倒、 いわゆる「2ちゃんねる用語」を多用したお寒いレス等々が並ぶ。 6、煽りと罵倒しか出来ない魯鈍まで魯鈍同士の空疎な煽りあいに飽きて去る。 7、何も提供できない白痴が過去の栄光の日々を夢見て空ageを繰り返す。 脳死状態 [] - [ここ壊れてます]
- 378 名前:デフォルトの名無しさん [2025/04/20(日) 16:48:37.48 ID:R2iq2iGJ.net]
- 7だろ
- 379 名前:デフォルトの名無しさん [2025/04/20(日) 18:35:19.98 ID:Ub0nEPUR.net]
- >>374
5〜7のいずれかの段階じゃないですか? 客観性を失いましたか?
- 380 名前:デフォルトの名無しさん [2025/04/21(月) 12:00:00.65 ID:5S3aJeqO.net]
- 話題が無いね…
- 381 名前:デフォルトの名無しさん mailto:sage [2025/04/21(月) 12:43:40.09 ID:H+gaTqgY.net]
- Ecxelビバ!
Chatガパチョ!
- 382 名前:デフォルトの名無しさん mailto:sage [2025/04/21(月) 12:45:10.43 ID:hGZB/ZtD.net]
- 書籍なら、高橋宣成『パーフェクトExcel VBA』辺りが今でもお勧め?
沢内晴彦『Excel VBA実戦のための技術』は昔買って読んで、内容は良かったと思うんだけど、著者の押し付けがましい語り口に辟易した記憶がある。各章冒頭のダイアログとかもうね。
- 383 名前:デフォルトの名無しさん mailto:sage [2025/04/21(月) 15:42:19.79 ID:TqAnAlAX.net]
- 今ならAIに頼んで自分に合ったものを書いてもらうのがお勧め
- 384 名前:デフォルトの名無しさん [2025/04/21(月) 18:50:43.50 ID:kvlDxPZn.net]
- 自分にあう書籍を書いてもらおう
- 385 名前:デフォルトの名無しさん [2025/04/21(月) 22:52:35.16 ID:TKKNFS+v.net]
- 初心者向けに実用的なコードを教えます!みたいな内容では無くて、もっとそもそも論を書いたシステム開発みたいな内容の本はないでしょうか?
- 386 名前:デフォルトの名無しさん [2025/04/21(月) 23:50:35.29 ID:DImNR5cR.net]
- あるょ
- 387 名前:デフォルトの名無しさん [2025/04/21(月) 23:56:59.82 ID:TKKNFS+v.net]
- VBAで差し込み印刷をする時の正解は結局なんでしょうか?
Excelで文章の様式、フォーマットがあって、それぞれのセルに行の値を代入して連続印刷する感じです。
- 388 名前:デフォルトの名無しさん [2025/04/22(火) 01:09:34.39 ID:ujoEa+wb.net]
- ある行に設定したらその値が各セルに表示されるようにしたらどうだろ
- 389 名前:デフォルトの名無しさん mailto:sage [2025/04/22(火) 05:15:10.29 ID:UGfRV5Rp.net]
- その場合はそれぞれのセルに行の値を代入して連続印刷するのが正解
- 390 名前:デフォルトの名無しさん [2025/04/22(火) 12:17:33.64 ID:qo6ZtztY.net]
- ユーザーフォームで入力画面つくるのがわかりやすい
- 391 名前:デフォルトの名無しさん mailto:sage [2025/04/22(火) 12:30:17.80 ID:S18G88V1.net]
- >>382
さすがにVBAにそれを求めるのはお門違い そもそも自称VBAプロでプログラミングの基礎がまともにある奴の方が少ないんだから、事実としてそんなもんVBAには必要ないってこと
- 392 名前:デフォルトの名無しさん [2025/04/22(火) 14:16:52.96 ID:ujoEa+wb.net]
- >>382
業務ならコーディング基準はあった方がいいだろね 個人用でも一部有用なのはあると思うよ
- 393 名前:デフォルトの名無しさん [2025/04/22(火) 14:57:52.39 ID:z9I6mhsO.net]
- Access使え
- 394 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 00:18:58.61 ID:Bj1O/t/P.net]
- 大体よ、いつからLetを省略する書き方になったんだよ?? 昔はValueプロパティすら省略なんてご法度だったし。
- 395 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 00:19:15.68 ID:Bj1O/t/P.net]
- 大体よ、いつからLetを省略する書き方になったんだよ?? 昔はValueプロパティすら省略なんてご法度だったし。
- 396 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 00:19:27.56 ID:DmG1qyy4.net]
- 大体よ、いつからLetを省略する書き方になったんだよ?? 昔はValueプロパティすら省略なんてご法度だったし。
- 397 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 00:20:10.60 ID:Bj1O/t/P.net]
- 大体よ、いつからLetを省略する書き方になったんだよ?? 昔はValueプロパティすら省略なんてご法度だったし。
- 398 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 01:50:51.14 ID:Ho3rM8lk.net]
- letは省略しても何ひとつ変わらないから書くだけ無駄
- 399 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 02:15:05.21 ID:gJbY6K2J.net]
- N-BASICの時代からLETなんて書くヤツはいなかった
- 400 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 02:34:24.48 ID:Bj1O/t/P.net]
- あれ?何故連投になってるんだろ?
- 401 名前:デフォルトの名無しさん [2025/04/23(水) 05:26:38.28 ID:pTAtgk9D.net]
- >>388
自称VBAプロでプログラミングの基礎がまともにある奴の方が少ないんだからこそそう言う本が読みたいのですが? VBAのコーディングでもより効率的に素早くコーディングするための方法が知りたいです 例えばコードブロックはメモ帳なりなんなりであらかじめ用意しておいて繰り返し流用するとか、ユーザー辞書にメソッドやプロパティを登録して入力を楽にするとか 少しでもノーコードに近づけるテクニックが知りたい
- 402 名前:デフォルトの名無しさん [2025/04/23(水) 05:33:09.52 ID:pTAtgk9D.net]
- >>386
今は転記元セルのアドレス列と転記先アドレス列の対応リストを作成して、range(セルの値).value = range(セルの値).value みたいな事をして転記しています 後から知ったのはreplace(転記先文字列,転記先文字列,差込文字列)ですね
- 403 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 06:36:06.92 ID:curLR6rF.net]
- よく使うコード片をコピペ用にストックしておくとかは、システム開発のそもそも論とはちょっと方向性が違う気がする。
- 404 名前:デフォルトの名無しさん [2025/04/23(水) 06:51:21.87 ID:rRnnFJi1.net]
- 金出して買った本にそんな事書いてあったらゲンナリするわな
- 405 名前:デフォルトの名無しさん [2025/04/23(水) 07:29:09.67 ID:Y1IHhqLd.net]
- よく使うならライブラリとか関数とかで既存処理を使い回せばいい
必要のないコードを書くのは逆に無駄だろう
- 406 名前:デフォルトの名無しさん [2025/04/23(水) 07:31:04.25 ID:Y1IHhqLd.net]
- インポート、エクスポートのことか?
- 407 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 07:34:29.45 ID:8e00UwyI.net]
- >>390
Accessは開発終わるからもう新しくなることないもんな
- 408 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 08:04:22.51 ID:xgsAirMR.net]
- >>398
繰り返し流用するようなコードやブロックは、 それこそ標準モジュールやクラスモジュールにするでしょ ユーザー辞書にプロパティやメソッドを追加? VBE上のctrl+spaceで大体のことは解決するだろ 目指してる方向が正に自称VBAプロ、明後日向いてるよ
- 409 名前:デフォルトの名無しさん [2025/04/23(水) 08:10:30.40 ID:pTAtgk9D.net]
- >>405
ショートカットキー 知らなかったです つい最近複数行選択からのタブで一括インテンドができると知りました 一括でインテンドを減らす方法ないですか?
- 410 名前:デフォルトの名無しさん [2025/04/23(水) 08:12:10.74 ID:pTAtgk9D.net]
- >>402
ライブラリという名前はよく聞くのですがなんでしょうか? アドオンに登録すればいいという事も聞くのですが、アドオンだと配布がいくらか面倒になるのが悲しいです
- 411 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 08:19:48.48 ID:xgsAirMR.net]
- >>406
Is the intended word an indentation? インデントを減らすにはshift+tab 本より先にヘルプファイルを読もう
- 412 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 08:31:17.24 ID:curLR6rF.net]
- ライブラリというのは、ざっくり言えば汎用的に使う目的で作られたクラスとか関数とかを集めたモジュール等のことだけど、正直言って、ライブラリを使ったり作ったりという辺りから、わざわざVBAでやらなくてもいいかなぁとなることが少なからずあるような気がする。
- 413 名前:デフォルトの名無しさん [2025/04/23(水) 08:32:23.99 ID:pTAtgk9D.net]
- 本格的なシステム開発の手法を勉強しなくてもできる、じゃなくて我流Excel、我流VBAが属人化の原因で、属人化が嫌われているんだから、本物の手法を学んで少しでも標準化に努めた方がいいと思う
- 414 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 09:19:54.75 ID:P67C9oqU.net]
- そういうことを言い出したらVBAは使うべきではないという結論にしかならないからナンセンス
VBAなんか雰囲気でいいんだよ雰囲気で
- 415 名前:デフォルトの名無しさん [2025/04/23(水) 09:24:11.20 ID:yoO2Q6CW.net]
- VBAで描くとどうせ属人化するんだからVBAじゃなくてPythonの方が描きやすい罠
- 416 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 10:07:14.33 ID:Rdf0901h.net]
- VBAが属人化の弊を指摘されやすいのは、VBAの強みの裏返しだからなぁ。Excelは大抵の業務用PCに入っているからプログラミング言語として最もアクセスしやすいというのがVBAの強みだけど、これは裏返せば@相対的にスキルの低い人がコードを書き、Aそのコードが業務に使われるという状況を生みやすくする原因となっている。これにB会社側が追加的なコストを掛けるつもりがないという条件が加わったのがいわゆる属人化。乱暴に言えば、素人が作ったコードが業務に使われていて、タダだからそのまま使い回したいという会社側の助平心に過ぎない。
会社がそれなりのコストを掛けて業務に使うコードを開発するのならVBAと同じような意味での属人化というのは基本的に起きないのよ。そもそもそういう場合にVBAが開発言語に選ばれる可能性は低いだろうし(Excelだけで完結させたいという状況はもあるだろうからゼロとは言わないけれど)。
- 417 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 10:13:34.84 ID:Rdf0901h.net]
- 408が一瞬分からなくて焦ったけど、unindentationか
- 418 名前:デフォルトの名無しさん [2025/04/23(水) 10:19:50.71 ID:j86zZac8.net]
- あなたのよく使うコードと私のよく使うコードが違うからな
自分で使い回しやすいようにまとめたらいい
- 419 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 11:24:31.44 ID:nS6nWMWO.net]
- 食人族の話題が活発だなと空目した
- 420 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 11:32:10.92 ID:FBWMxycZ.net]
- 結局、個人が自分の担当業務を勝手にVBAで局所最適化している構図なので、VBA自体がいかにわかりやすく書かれてようが定義上属人的なんだよね
人力で愚直にやる分にはやってることが周りの目にも見えやすいから、特定の個人の作業負荷が高かったり過大な責任を担っていたりしたら、 適宜マニュアル化して分担するような対応を取りやすい 一方、ヘタに担当者の「創意工夫」によって効率化されてるとそういった潜在的な課題が表面化しづらく、いざ担当者が離任するとなったときに一気に問題が噴出するわけだ こういう問題に対するシステム的な正道のアプローチは決まっていて、勝手に創意工夫させしない、現状が非効率であるという事実だけを然るべき場所へ報告させる、 その上で、必要な改善はトップダウンで実施する、という極めてアメリカ的なやり方になる こんなのはカイゼンを美徳とする日本人には無理な話だから、難しいこと考えないで存分にVBAで好きなように創意工夫したらいいよ
- 421 名前:デフォルトの名無しさん [2025/04/23(水) 13:49:06.15 ID:jU97Lp8p.net]
- VBA共通モジュールやEXCEL共通モジュール、ACCESS共通モジュールは分けて作っといたらいい
- 422 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 16:59:43.12 ID:aZ5FmP34.net]
- 個人が勝手に自動化させてる環境なんて、社員10〜20人程度の規模の企業だろ
そんなトコは将来何に躓こうがどうでもいいハナシでは? その規模でもきちんと社内で話し合って最適解を求めてる所なら属人化なんて杞憂にしか過ぎないような
- 423 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 17:21:41.74 ID:P67C9oqU.net]
- 大企業でも普通にあるぞ
完全にマニュアル通りに手を動かす人員を別にすれば、 大企業だろうと適切なアウトプットだけ出せればやり方については個人の裁量に委ねられている業務の範囲ってのはある
- 424 名前:デフォルトの名無しさん [2025/04/23(水) 18:06:06.77 ID:yoCsfqhD.net]
- 組織内のルールならその枠内で守ればいいのである
そのルールがよその組織でも当てはまるとは限らんのでな
- 425 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 20:15:32.24 ID:6pqdvTOr.net]
- 大企業で属人化されてても困ることは無いだろうから
やっぱり属人化をつべこべ言って
- 426 名前:トも始まらないのでは?
属人化された業務・作業なんか別の者がまた新たに属人化しようとも 業務に支障が出ないんだろ? じゃあ、属人化が何だってんだ 属人化言いたいだけちゃうんか、と [] - [ここ壊れてます]
- 427 名前:デフォルトの名無しさん [2025/04/23(水) 20:59:10.18 ID:pTAtgk9D.net]
- やっとディクショナリーにテーブル名と列名でキーを登録して、アイテムにListColumns(index).Databodyrangeで各列のデータ行が登録できて、dictionary(テーブル名列名).Rows(index).valueで値を書き込めるって知ったよ
これでテーブルをいちいち変数に代入する事から開放されるし、わかりやすい文字列で指定もできる Range(テーブル名[列名])でいいじゃんって言われたらそれまでだけど
- 428 名前:デフォルトの名無しさん [2025/04/23(水) 21:23:04.79 ID:rRnnFJi1.net]
- 同形式のテーブルが大量にあるのなら
まずそれがおかしい
- 429 名前:デフォルトの名無しさん mailto:sage [2025/04/23(水) 21:26:55.40 ID:Rdf0901h.net]
- 属人化っているのは、要するに会社から見て素性の分からないコードに会社の業務が依存している状態なわけ。大企業なら属人化が生じても困らないとか、業務に支障が出ないということでは全然なくて、大企業でも(普通はおよs考えにくいことだが)万一、属人化が生じたら当然困るよ。ただ、大企業は通常そんなリスキーなことはしない、させないような組織になっているというだけ。
大企業のコア業務の一部が素人の書いたVBAコードに依存していて、他の人が手を出せないブラックボックスになっているとか(論理的には絶対に起こり得ないというわけではないけれど)考えにくいでしょ?
- 430 名前:デフォルトの名無しさん [2025/04/23(水) 21:42:20.56 ID:jOg2yMv5.net]
- メーカーの間接部門だけどVBAは改善提案やQC活動と相性が良すぎる
あと依頼者からのユーザーフォームの人気は異常
- 431 名前:デフォルトの名無しさん [2025/04/23(水) 22:06:24.94 ID:pTAtgk9D.net]
- >>424
だってテーブルの列名で指定したり、動的に処理するのが非常に楽なんだもの ws.cells(rows.count,index).end(xlup).rowとか ws.cells(i,index).valueとか いちいちやってらんない 私がまだまだ技量不足なだけですが
|

|