!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付けるナリ
ExcelのVBAに関する質問スレナリ
コード書き込みや作成依頼もOKナリ
※前スレ
Excel VBA 質問スレ Part70
https://mevius.5ch.net/test/read.cgi/tech/1616072923/
Excel VBA 質問スレ Part71
https://mevius.5ch.net/test/read.cgi/tech/1621914481/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
Excel VBA 質問スレ Part73
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 4668-xJJl)
2021/09/13(月) 07:29:59.47ID:GNx0xRRz0325デフォルトの名無しさん (ワッチョイ c310-eIP4)
2021/10/07(木) 20:11:24.24ID:70iiidwq0 >>324
記録してみてどうなってるか見てみれば分かるじゃん
記録してみてどうなってるか見てみれば分かるじゃん
326デフォルトの名無しさん (ワッチョイ f35f-1D0T)
2021/10/07(木) 21:05:39.19ID:D5dO/oMJ0327デフォルトの名無しさん (ワッチョイ 435f-nDZW)
2021/10/07(木) 21:29:48.70ID:AykPZAFh0 ActiveSheet.PivotTables("ぴぼっとてーぶる").PivotFields("ふぃーるど").ClearAllFilters
ActiveSheet.PivotTables("ぴぼっとてーぶる").PivotFields("ふぃーるど").PivotFilters.Add Type:=xlCaptionEquals, Value1:="表示したいもの"
ActiveSheet.PivotTables("ぴぼっとてーぶる").PivotFields("ふぃーるど").PivotFilters.Add Type:=xlCaptionEquals, Value1:="表示したいもの"
328デフォルトの名無しさん (ワッチョイ e301-RzFA)
2021/10/07(木) 23:55:42.12ID:P9pCLiyt0 VBAで最適化したら仕事増やされた話ってよく聞くけど
そいつが辞めたらそいつに回されてた膨大な仕事はどうなるん
そいつが辞めたらそいつに回されてた膨大な仕事はどうなるん
329デフォルトの名無しさん (アウアウキー Sacb-h0Ad)
2021/10/08(金) 00:17:45.54ID:sJT5Ti/qa うちの職場は適当にvbaでつくったやつをちゃんとしたアプリに置き換えてるよ
330デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/08(金) 00:31:33.80ID:GXvDbP/z0 アプリだろうがvbaだろうが作った人間がやめたらメンテできなくて終わるんじゃないの
開発者が大勢いるようなレアな職場ならともかく
vba使ってるところなんてたいてい事務で
エクセル職人が少数いるだけだろ
開発者が大勢いるようなレアな職場ならともかく
vba使ってるところなんてたいてい事務で
エクセル職人が少数いるだけだろ
331デフォルトの名無しさん (テテンテンテン MM86-Rkqs)
2021/10/08(金) 00:37:30.31ID:d3eTt0zpM 実際にはそういうときには業務そのものが消滅するケースも多いよ
そもそもVBAで簡単に自動化できるような業務はもともと無意味であるものが多いからな
そもそもVBAで簡単に自動化できるような業務はもともと無意味であるものが多いからな
332デフォルトの名無しさん (ワッチョイ 9eda-JSxF)
2021/10/08(金) 02:32:08.41ID:KEaimES90 人がやめた後に職場がどうなるかはその職場の責任者が決めるんじゃね
下っ端が気にすることじゃない
下っ端が気にすることじゃない
333デフォルトの名無しさん (スフッ Sdea-JSxF)
2021/10/08(金) 04:11:36.40ID:vcejz6/Ud 市販アプリでも、天才的な開発者が辞めて、会社もろともアプリもダメになって終わったパターンをいくつも見てきた
334デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/08(金) 07:11:46.26ID:GXvDbP/z0335デフォルトの名無しさん (アウアウウー Sa2f-YkK2)
2021/10/08(金) 08:09:49.53ID:Am1Ugnvua336デフォルトの名無しさん (ワッチョイ 8a05-GJBa)
2021/10/08(金) 09:40:27.58ID:JQJjKarL0 CPU使用率が大きかったのでダメもとで開いて修復を実行したら
かなり軽くなるのな、知らんかった
これ定期的にやったほうがいいのか?
VBAのコードを一旦退避させるのが面倒だが...
かなり軽くなるのな、知らんかった
これ定期的にやったほうがいいのか?
VBAのコードを一旦退避させるのが面倒だが...
337デフォルトの名無しさん (ワッチョイ 5f2f-GJBa)
2021/10/08(金) 17:00:42.44ID:EVmjGNOc0 >>336
詳しく
詳しく
338デフォルトの名無しさん (ワッチョイ de10-J+i2)
2021/10/08(金) 22:11:41.59ID:x7uCSItJ0 属人的にならない仕組みで効率化できればいいんだが、頭の中が古き良きな方々が幅を利かせる日本ではなかなか難しい
339デフォルトの名無しさん (ワッチョイ b301-A6QN)
2021/10/09(土) 01:49:50.17ID:98oBjVW70 自分が初めてVBAを使って解決した時点で、他にVBAを使う人がいないんだから属人化しないわけがないと思うけどな
しかもVBAってプログラミング言語の中では非常に初心者向けなわけで、
誰もVBAで組めない=プログラミングに全員疎いのはほぼ決定なんだから尚更さ
VBAを共通知識にしたいっていうのは、
最初にプログラミングっていう一般的には取っ付き難い物に興味を持たせるっていう途轍もなく大きなハードルを超える必要があって、
それは「興味がある生徒に教える」プログラミング講師以上に難しいと思う
相当な根気が必要だと思うよ
しかもVBAってプログラミング言語の中では非常に初心者向けなわけで、
誰もVBAで組めない=プログラミングに全員疎いのはほぼ決定なんだから尚更さ
VBAを共通知識にしたいっていうのは、
最初にプログラミングっていう一般的には取っ付き難い物に興味を持たせるっていう途轍もなく大きなハードルを超える必要があって、
それは「興味がある生徒に教える」プログラミング講師以上に難しいと思う
相当な根気が必要だと思うよ
340デフォルトの名無しさん (ワッチョイ 5f2f-GJBa)
2021/10/09(土) 02:16:01.12ID:2HXwYm4Z0 そもそも人に仕事が割り振られた段階で属人化されてるわけで
たんに次の人が困って終わりだよ
たんに次の人が困って終わりだよ
341デフォルトの名無しさん (ワッチョイ b301-A6QN)
2021/10/09(土) 02:30:43.66ID:98oBjVW70 確かに。
レス漁ってみたが、
ここでいう「属人化で困る」は「他の人にはできないVBAというテクニックを持つオレスゲー」を単にオブラートに包んだだけっぽい感じがするな
レス漁ってみたが、
ここでいう「属人化で困る」は「他の人にはできないVBAというテクニックを持つオレスゲー」を単にオブラートに包んだだけっぽい感じがするな
342デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 02:49:32.47ID:0Qsp0NFP0 マクロの効率化ガン無視で社員の手が開いた分だけ仕事を割り振る上司がいるらしいけど
その時点である意味属人化してるよね
その仕事引き継ぐやつ
まずさばき切れないだろ
その時点である意味属人化してるよね
その仕事引き継ぐやつ
まずさばき切れないだろ
343デフォルトの名無しさん (ワッチョイ 9eda-JSxF)
2021/10/09(土) 04:49:21.33ID:UCXjyRPA0 うちの職場ではほとんどの人がマクロできるけど、新人に自信持たせるためにわざわざ気を使って
「君マクロできるなんて凄いね〜」っておだててるのに同調するのが正直めんどくさい
「君マクロできるなんて凄いね〜」っておだててるのに同調するのが正直めんどくさい
344デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 04:50:24.64ID:0Qsp0NFP0 そういうとこは給料高そうで羨ましい
345デフォルトの名無しさん (ワッチョイ 9eda-JSxF)
2021/10/09(土) 05:01:41.26ID:UCXjyRPA0 >>344
給料は個人の能力に比例します
給料は個人の能力に比例します
346デフォルトの名無しさん (スプッッ Sd02-JSxF)
2021/10/09(土) 08:10:48.77ID:KDe6uexsd 新人の育成は面倒だけど将来的に必要なことだからなあ
褒めた方が上達が早いってのも科学的に証明されつつあるし、そういうもんだからあきらめろ
褒めた方が上達が早いってのも科学的に証明されつつあるし、そういうもんだからあきらめろ
347デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 08:19:40.75ID:0Qsp0NFP0 全員VBAできるとか絶対給料高いとこだろ
うちのところなんて一人しかいないよ
しかも残りは関数すらまともにあつない
うちのところなんて一人しかいないよ
しかも残りは関数すらまともにあつない
348デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 08:21:07.29ID:0Qsp0NFP0 おかげで効率がすげー悪い
基本は専用ソフト扱うからエクセルは必須ではないとはいえ
それでもエクセルやVBAやれるのとやれないのとでは効率が雲泥の差
基本は専用ソフト扱うからエクセルは必須ではないとはいえ
それでもエクセルやVBAやれるのとやれないのとでは効率が雲泥の差
349デフォルトの名無しさん (ラクッペペ MM86-65Sl)
2021/10/09(土) 08:31:06.39ID:HlWFX8NcM 選民思想ここに極まれり
350デフォルトの名無しさん (ワッチョイ 1bda-JSxF)
2021/10/09(土) 08:33:14.89ID:qDyUb0P50 研修とか外部の自宅学習プログラムでもやったら?
費用は会社持ち、報奨金も少しは付けて
費用は会社持ち、報奨金も少しは付けて
351デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 08:37:41.66ID:0Qsp0NFP0 そんな金あったら給料上げてレベルの高い人材雇うか
もうちょっとマシな専用ソフト使ってる
金をケチったせいでオンボロ専用ソフト使わせれて
専用ソフトじゃフォローしきれないのでエクセル活用しないと行けない羽目になってる
もうちょっとマシな専用ソフト使ってる
金をケチったせいでオンボロ専用ソフト使わせれて
専用ソフトじゃフォローしきれないのでエクセル活用しないと行けない羽目になってる
352デフォルトの名無しさん (スフッ Sdea-JSxF)
2021/10/09(土) 08:57:09.18ID:g5OHjBNSd 会社は社員に楽させたいと思ってるわけじゃない、という大前提
人材なんて時間いっぱい、めいっぱい働かせてナンボ
安いアプリを買って、あとは社員にやらせて、それで回ってるなら何も問題ないんだよ
人材なんて時間いっぱい、めいっぱい働かせてナンボ
安いアプリを買って、あとは社員にやらせて、それで回ってるなら何も問題ないんだよ
353デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 09:27:27.16ID:0Qsp0NFP0 高い金出して高価な専用ソフト使うくらいなら
多少残業代だしてもいいからボロソフト使ったほうが安上がりだからな
多少残業代だしてもいいからボロソフト使ったほうが安上がりだからな
354デフォルトの名無しさん (ワッチョイ 4a42-sdlf)
2021/10/09(土) 09:42:15.79ID:58+qPlR+0 エクセルはマス目状に文章を入力できるソフトぐらいにしか思ってない人もいるしなあ
355デフォルトの名無しさん (スププ Sdea-J+i2)
2021/10/09(土) 15:35:55.10ID:8vFa8kgUd356デフォルトの名無しさん (アウアウエー Sac2-U6Q3)
2021/10/09(土) 20:10:49.92ID:J89rndhPa セル結合せずにせめて広げろや、とは思う
357デフォルトの名無しさん (ブーイモ MM86-ir1/)
2021/10/09(土) 20:26:49.65ID:XLSjDb/pM セル結合とvlookupをディスってようやくエクセル使いとして一人前
358デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 20:30:33.16ID:0Qsp0NFP0 べつにvlookupは悪くないだろ俺は使いたくないけど
359デフォルトの名無しさん (ブーイモ MM4f-ir1/)
2021/10/09(土) 20:58:23.98ID:ZXG2HktNM >俺は使いたくないけど
さりげないアピール
さりげないアピール
360デフォルトの名無しさん (ブーイモ MM4f-ir1/)
2021/10/09(土) 20:59:19.46ID:ZXG2HktNM >俺は使いたくないけど
さりげなさを装ったアピール
さりげなさを装ったアピール
361デフォルトの名無しさん (ドコグロ MMdf-sB7P)
2021/10/09(土) 21:05:39.47ID:LYlfiTybM VLOOKUPディスってるのは情弱だろ
2016からめっちゃ高速化されてるから数万行ぐらいなら普通に使える
2016からめっちゃ高速化されてるから数万行ぐらいなら普通に使える
362デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/09(土) 21:11:18.66ID:0Qsp0NFP0 高速化とかどうでも良い
左端しかデータが使えないのが不便
無駄な検索用データが全部左端に固まる
左端しかデータが使えないのが不便
無駄な検索用データが全部左端に固まる
363デフォルトの名無しさん (ササクッテロレ Sp03-+BSw)
2021/10/10(日) 06:43:03.77ID:LB6rENWtp 個人的に使いたい使いたくないは仕方がない
適材適所で最適解を出す手段に自ら縛りを掛けているだけだから
それで他の人に迷惑掛けている訳でなければとやかく言う筋合いでも無いしな
適材適所で最適解を出す手段に自ら縛りを掛けているだけだから
それで他の人に迷惑掛けている訳でなければとやかく言う筋合いでも無いしな
364デフォルトの名無しさん (ドコグロ MMdf-sB7P)
2021/10/10(日) 08:15:02.57ID:AQQzB40DM365デフォルトの名無しさん (ワッチョイ 9e68-JSxF)
2021/10/10(日) 10:34:27.64ID:iKRuQHQv0 index matchでええやん
366デフォルトの名無しさん (ブーイモ MM4f-Wbmm)
2021/10/10(日) 15:09:30.75ID:2USb7I2AM MATCHはいちいちIFERROR組み込まなきゃいけないから式が冗長になりがちであんまり好きくない
367デフォルトの名無しさん (スフッ Sdea-JSxF)
2021/10/10(日) 15:39:33.06ID:wqZqaK12d そもそもスピードは求めてない
元データを1日に何回もアップデートするわけじゃないし
元データを1日に何回もアップデートするわけじゃないし
368デフォルトの名無しさん (ワッチョイ 9e68-JSxF)
2021/10/10(日) 15:46:10.06ID:iKRuQHQv0 >>366は何使ってんの?
369デフォルトの名無しさん (ブーイモ MM4f-Wbmm)
2021/10/10(日) 16:04:08.10ID:2USb7I2AM >>368
あんまり関数でデータベース検索かけたくないけどかけなきゃいけないならXLOOKUP、自分以外が使う可能性があるならVLOOKUPかHLOOKUPかなぁ
状況に合わないならMATCHも使うけど使用優先度は低め
VBAにやらせる時も中に確実に存在する場合でなければRange型にFind使って放り込む事が多いかも
Is Nothingで見つからない場合でも処理が止まらずに弾けるし
あんまり関数でデータベース検索かけたくないけどかけなきゃいけないならXLOOKUP、自分以外が使う可能性があるならVLOOKUPかHLOOKUPかなぁ
状況に合わないならMATCHも使うけど使用優先度は低め
VBAにやらせる時も中に確実に存在する場合でなければRange型にFind使って放り込む事が多いかも
Is Nothingで見つからない場合でも処理が止まらずに弾けるし
370デフォルトの名無しさん (ワッチョイ 9e68-JSxF)
2021/10/10(日) 16:23:38.63ID:iKRuQHQv0371デフォルトの名無しさん (ドコグロ MMdf-sB7P)
2021/10/10(日) 16:30:18.62ID:6uQRu7X1M372デフォルトの名無しさん (ワッチョイ 67da-JSxF)
2021/10/10(日) 16:51:12.87ID:JSJMRLhD0 ある行を内容の変更は自由にできるけど削除できないようにすることはできますか?
373デフォルトの名無しさん (ワッチョイ cb01-VEx9)
2021/10/10(日) 17:26:53.27ID:rp73utgy0 それ、ここでする質問?
374デフォルトの名無しさん (ワッチョイ 0668-Mxyx)
2021/10/10(日) 17:53:50.05ID:19DRUExW0375デフォルトの名無しさん (ワッチョイ 0310-1otZ)
2021/10/10(日) 18:04:32.90ID:u+pPz2Uo0 ゴミみたいな回答ばかり
376デフォルトの名無しさん (ワッチョイ 9eda-h0Ad)
2021/10/10(日) 19:05:42.11ID:eL4HRu610 じゃあ、ゴミじゃない回答よろ
377デフォルトの名無しさん (ワッチョイ 03d0-Oubo)
2021/10/10(日) 19:35:34.55ID:rFwRYXWV0 「削除できないように」というのが:
・「セルや行の削除をできないようにしたい」→シートの保護で対処
・「値の変更はできるが消去(空欄に)できないようにしたい」→入力規則で対処
・「セルや行の削除をできないようにしたい」→シートの保護で対処
・「値の変更はできるが消去(空欄に)できないようにしたい」→入力規則で対処
378デフォルトの名無しさん (ワッチョイ 9eda-JSxF)
2021/10/10(日) 20:12:04.54ID:eL4HRu610 対処の方法がわからないのかと思ったら、対処する方法があるのかどうかの質問だったのかw
379372 (ワッチョイ 67da-JSxF)
2021/10/11(月) 00:26:21.39ID:Z2LLk70Q0380デフォルトの名無しさん (ワッチョイ 635f-hK1x)
2021/10/11(月) 14:09:59.80ID:7nZn8gcC0381デフォルトの名無しさん (ワッチョイ 67da-jfFw)
2021/10/11(月) 14:59:32.76ID:Z2LLk70Q0382デフォルトの名無しさん (アウアウクー MM43-tvk4)
2021/10/11(月) 18:57:29.54ID:nQqo0+vnM 空白に編集する場合とかどう取り扱うつもりなんだろう
383デフォルトの名無しさん (ワッチョイ de10-J+i2)
2021/10/11(月) 20:49:58.25ID:SLAXBehE0 クビか配置転換したほうがよいかと
384デフォルトの名無しさん (ワッチョイ 0b8e-o/se)
2021/10/11(月) 21:18:23.92ID:oro4FUng0 馬鹿でもある程度作れてしまうからダメなんだよな
385デフォルトの名無しさん (ワッチョイ 9eda-JSxF)
2021/10/12(火) 18:51:44.09ID:F8L1eENx0 それを求める環境が悪い
386デフォルトの名無しさん (ワッチョイ 9eda-JSxF)
2021/10/14(木) 18:44:35.26ID:FbYeSmKT0 空白は削除じゃないんじゃね
387デフォルトの名無しさん (オッペケ Sr03-iuVz)
2021/10/14(木) 19:05:30.78ID:DEjpZ/5cr メーカー開発設計だけど実験データ処理とかで
なれないながら頑張ってvba使ってるけど
試行錯誤で調べながらだからあんまりシート使ってるときと比べて効率化できてる気がしない…
でもシートでチマチマするよりは知的労働してる気がするし
いつかのペイオフを期待するわ
なれないながら頑張ってvba使ってるけど
試行錯誤で調べながらだからあんまりシート使ってるときと比べて効率化できてる気がしない…
でもシートでチマチマするよりは知的労働してる気がするし
いつかのペイオフを期待するわ
388デフォルトの名無しさん (ワッチョイ 0310-1otZ)
2021/10/14(木) 20:42:17.77ID:BHqqoV+20 あるレベルを超えると突然やりたいことはこうやりゃいいじゃんってなってバリバリ書けるようになる
389デフォルトの名無しさん (ワッチョイ 0668-Mxyx)
2021/10/14(木) 22:26:04.22ID:FxTzsGq40 set覚えてオブジェクトの概念覚えてイベントを理解してしばらくするとほぼ全ての場面で対応できるようになる
390デフォルトの名無しさん (ワッチョイ 6b01-18WC)
2021/10/15(金) 06:17:54.01ID:YCIon6in0 色々覚えて余計な知識が付いてきて、
これはもっと綺麗に書けるんじゃないか?っていう欲が出て進まなくなる事が増えたんだけどどうすりゃいいのか
今までは明らかに冗長で読みづらいコードが多かったけど、生産性で見れば高かったように思う
特にプログラミング自体に興味が出てきて他の言語の記事も見るようになって、
そこで得た知識をVBAで無理に再現しようとしてドツボに嵌る事態も多いように感じる
これはもっと綺麗に書けるんじゃないか?っていう欲が出て進まなくなる事が増えたんだけどどうすりゃいいのか
今までは明らかに冗長で読みづらいコードが多かったけど、生産性で見れば高かったように思う
特にプログラミング自体に興味が出てきて他の言語の記事も見るようになって、
そこで得た知識をVBAで無理に再現しようとしてドツボに嵌る事態も多いように感じる
391デフォルトの名無しさん (ワッチョイ 9f4f-/GGz)
2021/10/15(金) 07:30:19.61ID:xvvRRo/+0 >>390
まず単一責任原則に沿って作るといいよ。
つらつらとコードを一直線に書くんじゃなくて、
役割に合わせてメソッドや関数を作って
それを部品として組み立てて行くイメージ。
後、他言語をやっていてクラスや
インターフェースの概念を理解しているなら
行き当たりばったりで最初からコードを
書くんじゃなくてどういう構成で組むかを
一度図に書いてイメージしてから作るといいよ。
そのためにもUMLとかもかじっておくと
いいんじゃないかな。
後は暇なときにデザインパターンの本でも
読んでおいて使えそうなのだけ
使えばいいんじゃないかな。
ただ、VBAでは自分一人で使うんであれば
それでいいけど、後々人が見たり手を入れたり
することを考えると、やり過ぎると
そもそもその辺の概念を理解していない
人が多いからね。自分以外誰も触れない
オナニーコードの完成だよ。
その辺は気を付けないとね。
まず単一責任原則に沿って作るといいよ。
つらつらとコードを一直線に書くんじゃなくて、
役割に合わせてメソッドや関数を作って
それを部品として組み立てて行くイメージ。
後、他言語をやっていてクラスや
インターフェースの概念を理解しているなら
行き当たりばったりで最初からコードを
書くんじゃなくてどういう構成で組むかを
一度図に書いてイメージしてから作るといいよ。
そのためにもUMLとかもかじっておくと
いいんじゃないかな。
後は暇なときにデザインパターンの本でも
読んでおいて使えそうなのだけ
使えばいいんじゃないかな。
ただ、VBAでは自分一人で使うんであれば
それでいいけど、後々人が見たり手を入れたり
することを考えると、やり過ぎると
そもそもその辺の概念を理解していない
人が多いからね。自分以外誰も触れない
オナニーコードの完成だよ。
その辺は気を付けないとね。
392デフォルトの名無しさん (ワッチョイ ef68-VjlT)
2021/10/15(金) 07:53:52.36ID:i1GdH9Fr0393デフォルトの名無しさん (ゲマー MM3f-/SeR)
2021/10/15(金) 08:56:32.98ID:Ob8xTIA6M メソッドが3つ以上にできそうなときはクラスを検討する
394デフォルトの名無しさん (ラクッペペ MM7f-xEoX)
2021/10/15(金) 09:22:10.96ID:Y66b/sjXM 美しさより速さだよ
最初の頃は両立するが(無駄なSelectなど)
次第によ醜くなっていく
最初の頃は両立するが(無駄なSelectなど)
次第によ醜くなっていく
395デフォルトの名無しさん (エムゾネ FFbf-mxW8)
2021/10/15(金) 10:10:42.08ID:Sjupi756F もう3年くらいExcel使ってないけど全然困らないωωω
396デフォルトの名無しさん (ワッチョイ 2b10-c8v8)
2021/10/15(金) 11:34:26.87ID:r1bpZsgJ0 ふーん
397デフォルトの名無しさん (ブーイモ MM4f-gSog)
2021/10/15(金) 20:36:17.72ID:WLz9ti2OM >>395
なんでこのスレに居るの?
なんでこのスレに居るの?
398デフォルトの名無しさん (ワッチョイ 6b01-18WC)
2021/10/15(金) 21:42:47.27ID:YCIon6in0 >>391,392
ありがとう
分けた方がスッキリするんだけど、
分けすぎると逆に関数があっちこっちに分散してどれが何に使われているのか分かり辛くなる
そういう時に「どこまで分けるか」っていう塩梅はどういう基準で決めてる?
ありがとう
分けた方がスッキリするんだけど、
分けすぎると逆に関数があっちこっちに分散してどれが何に使われているのか分かり辛くなる
そういう時に「どこまで分けるか」っていう塩梅はどういう基準で決めてる?
399デフォルトの名無しさん (ワッチョイ 9f4f-/GGz)
2021/10/15(金) 22:02:32.86ID:xvvRRo/+0 >>398
役割。
モジュールもメソッドも全てに役割分担を持たせてキチンと仕舞うべき場所に仕舞っておく。
だからその役割を行う為なら100行になろうが1000行になろうがそのメソッドに記載する。
何を持ってしてひとつの役割とするかは作る人のセンスに掛かってくるから場数をこなして慣れるしかないかな。
役割。
モジュールもメソッドも全てに役割分担を持たせてキチンと仕舞うべき場所に仕舞っておく。
だからその役割を行う為なら100行になろうが1000行になろうがそのメソッドに記載する。
何を持ってしてひとつの役割とするかは作る人のセンスに掛かってくるから場数をこなして慣れるしかないかな。
400デフォルトの名無しさん (ワッチョイ 0fda-ZO17)
2021/10/15(金) 22:06:51.27ID:xdjJa8Ad0401デフォルトの名無しさん (ワッチョイ ab5f-UsRe)
2021/10/16(土) 13:55:14.29ID:Hx8OP0An0 >>398
> 分けすぎると逆に関数があっちこっちに分散してどれが何に使われているのか分かり辛くなる
関数にカーソル合わせて「Shift+F2」で定義箇所に飛べるよ
https://www.wordvbalab.com/code/2925/
まあ言語自体も開発環境も貧弱すぎるからまとめたくなっちゃう感覚はわかるけど
> 分けすぎると逆に関数があっちこっちに分散してどれが何に使われているのか分かり辛くなる
関数にカーソル合わせて「Shift+F2」で定義箇所に飛べるよ
https://www.wordvbalab.com/code/2925/
まあ言語自体も開発環境も貧弱すぎるからまとめたくなっちゃう感覚はわかるけど
402デフォルトの名無しさん (ワッチョイ 6b01-Avck)
2021/10/16(土) 16:39:05.71ID:EZGI4ZK10 調べてもわからないのでお聞きしたいです
下の処理でtest3まで処理は正常に行われるんですが
mainに戻ったときに型の不一致でエラーが出て止まってしまいます。
Dim WS As Worksheet
Sub main()
Call test3(TEMP_SHEET)
End Sub
Function TEMP_SHEET() As Worksheet
Set TEMP_SHEET = ThisWorkbook.Worksheets("temp")
Set WS = TEMP_SHEET
End Function
Function test3() As Variant
With WS
.Select
.Cells(1, 1) = "test"
End With
End Function
下の処理でtest3まで処理は正常に行われるんですが
mainに戻ったときに型の不一致でエラーが出て止まってしまいます。
Dim WS As Worksheet
Sub main()
Call test3(TEMP_SHEET)
End Sub
Function TEMP_SHEET() As Worksheet
Set TEMP_SHEET = ThisWorkbook.Worksheets("temp")
Set WS = TEMP_SHEET
End Function
Function test3() As Variant
With WS
.Select
.Cells(1, 1) = "test"
End With
End Function
403デフォルトの名無しさん (ワッチョイ 4b68-ZO17)
2021/10/16(土) 16:51:56.90ID:a6cW1Kja0 test3()なのにcallで引数渡そうとしてる
404デフォルトの名無しさん (ワッチョイ fbe6-twAR)
2021/10/16(土) 17:03:21.91ID:cq/EQnSr0 VariantにはArrayとかも入るから ()付けても書式エラーにはならないのかな
405デフォルトの名無しさん (ワッチョイ 5bda-ir6K)
2021/10/16(土) 17:06:32.68ID:eJomN4xc0406デフォルトの名無しさん (ワッチョイ fbe6-twAR)
2021/10/16(土) 17:09:51.40ID:cq/EQnSr0 test3の実行後にエラーになるのがこの質問のミソだと思うよ
407デフォルトの名無しさん (ブーイモ MM4f-ZO17)
2021/10/16(土) 17:43:21.23ID:nAOL9IkjM >>402
そもそも「test3までは正常」というのが間違い
これではまったく動かない
とりあえず動くようにするなら、たとえばこう書けばいい
ほかにも色々なパターンが考えられるけど、何がやりたいのかよくわからないので
Dim WS As Worksheet
Sub main()
Call TEMP_SHEET
Call test3
End Sub
Sub TEMP_SHEET()
Set WS = ThisWorkbook.Worksheets("temp")
End Sub
Sub test3()
With WS
.Select
.Cells(1, 1) = "test"
End With
End Sub
そもそも「test3までは正常」というのが間違い
これではまったく動かない
とりあえず動くようにするなら、たとえばこう書けばいい
ほかにも色々なパターンが考えられるけど、何がやりたいのかよくわからないので
Dim WS As Worksheet
Sub main()
Call TEMP_SHEET
Call test3
End Sub
Sub TEMP_SHEET()
Set WS = ThisWorkbook.Worksheets("temp")
End Sub
Sub test3()
With WS
.Select
.Cells(1, 1) = "test"
End With
End Sub
408デフォルトの名無しさん (ワッチョイ 2b10-c8v8)
2021/10/16(土) 18:35:14.73ID:Pp6vdwK70 確かにこれではtest3は動かない
409デフォルトの名無しさん (ワッチョイ 0fda-ZO17)
2021/10/16(土) 18:36:14.79ID:njPM+lzE0 >>402
test3まで処理が正常に行われたなら気にしなくていいんじゃね
test3まで処理が正常に行われたなら気にしなくていいんじゃね
410デフォルトの名無しさん (ワッチョイ fb2f-4HJo)
2021/10/16(土) 18:46:34.14ID:m1u7MgLp0 ステップ実行させたら確かにtest3実行するな
こんなのコンパイルエラーで良いと思うんだが、なかなか興味深い
こんなのコンパイルエラーで良いと思うんだが、なかなか興味深い
411デフォルトの名無しさん (ワッチョイ 6b01-Avck)
2021/10/16(土) 18:57:45.79ID:EZGI4ZK10 ありがとうございます!
test3はsubでよかったんですね。
参考にしながらいろいろ試したらできました。
すごく助かりました。
test3はsubでよかったんですね。
参考にしながらいろいろ試したらできました。
すごく助かりました。
412デフォルトの名無しさん (ワッチョイ fb2f-4HJo)
2021/10/16(土) 19:30:00.02ID:m1u7MgLp0 いや、問題はSubかFunctionかじゃないんだが
FunctionをCallしても、戻り値が捨てられるだけで別に問題はないぞ
名前の付け方がまあアレだが
Dim WS As Worksheet の行消して
Function TEMP_SHEET() As Worksheet
Set TEMP_SHEET = ThisWorkbook.Worksheets("temp")
End Function
Function test3(WS As Worksheet) As Variant
With WS
.Select
.Cells(1, 1) = "test"
End With
End Function
とかで動くだろ
FunctionをCallしても、戻り値が捨てられるだけで別に問題はないぞ
名前の付け方がまあアレだが
Dim WS As Worksheet の行消して
Function TEMP_SHEET() As Worksheet
Set TEMP_SHEET = ThisWorkbook.Worksheets("temp")
End Function
Function test3(WS As Worksheet) As Variant
With WS
.Select
.Cells(1, 1) = "test"
End With
End Function
とかで動くだろ
413デフォルトの名無しさん (ワッチョイ 6b01-Avck)
2021/10/16(土) 20:00:16.92ID:EZGI4ZK10 >>412
ありがとうございます。すごく勉強になりました。
ありがとうございます。すごく勉強になりました。
414デフォルトの名無しさん (アウアウエー Sa3f-qeGn)
2021/10/16(土) 21:23:47.08ID:aQ5UbG+6a 最終の答え得るためにいくつの関数に分けるか、というのはどうやったら身につくんでしょうか
415デフォルトの名無しさん (ワッチョイ 4b68-ZO17)
2021/10/16(土) 21:32:26.89ID:a6cW1Kja0 分けたくなったら分ければいい
・朝起きる
・トイレ
・歯磨き
・食事
・デンタルフロス
・着替え
・家出る
寝起きのルーチンとしてトイレ歯磨きをセットとするとか
無い時もある食事デンタルフロスをセットとするとか
歯磨きが先なのは寝起きで飲み食いが嫌で個人的な事だから異論はあると思う
・朝起きる
・トイレ
・歯磨き
・食事
・デンタルフロス
・着替え
・家出る
寝起きのルーチンとしてトイレ歯磨きをセットとするとか
無い時もある食事デンタルフロスをセットとするとか
歯磨きが先なのは寝起きで飲み食いが嫌で個人的な事だから異論はあると思う
416デフォルトの名無しさん (ワッチョイ 0fb0-TpuX)
2021/10/16(土) 21:49:34.88ID:CDLajE+o0417デフォルトの名無しさん (アウアウエー Sa3f-qeGn)
2021/10/17(日) 09:01:15.98ID:MVHP31+Wa418デフォルトの名無しさん (ワッチョイ 2bb1-SdPo)
2021/10/17(日) 11:37:36.37ID:LVwZEVKT0 別スレから来ました
A1 会社名 B1仕事の項目 C1整理番号
B1の項目に従って規定のExcelファイルを開いてA1の会社名とC1の整理番号を合体して名前をつけて保存っていう操作をしたいんだけど、これはVBAで出来ますか?
別件ですがVBAでオススメの書籍があれば教えてください
A1 会社名 B1仕事の項目 C1整理番号
B1の項目に従って規定のExcelファイルを開いてA1の会社名とC1の整理番号を合体して名前をつけて保存っていう操作をしたいんだけど、これはVBAで出来ますか?
別件ですがVBAでオススメの書籍があれば教えてください
419デフォルトの名無しさん (ワッチョイ 8b01-UJka)
2021/10/17(日) 11:41:00.73ID:Vlp9RG+s0 余裕で可能
420デフォルトの名無しさん (ワッチョイ 2b10-8HLh)
2021/10/17(日) 11:47:00.68ID:rQoWwir60421デフォルトの名無しさん (ワッチョイ 9f4f-/GGz)
2021/10/17(日) 12:11:29.02ID:ZLWKnlAP0422デフォルトの名無しさん (ワッチョイ 2b10-8HLh)
2021/10/17(日) 12:14:56.83ID:rQoWwir60 なんでExcelファイル操作するのにRubyスレから来るんだよ
423デフォルトの名無しさん (ワッチョイ 2bb1-SdPo)
2021/10/17(日) 12:16:45.71ID:LVwZEVKT0 別スレから来ました
A1 会社名 B1仕事の項目 C1整理番号
B1の項目に従って規定のExcelファイルを開いてA1の会社名とC1の整理番号を合体して名前をつけて保存っていう操作をしたいんだけど、これはVBAで出来ますか?
別件ですがVBAでオススメの書籍があれば教えてください
A1 会社名 B1仕事の項目 C1整理番号
B1の項目に従って規定のExcelファイルを開いてA1の会社名とC1の整理番号を合体して名前をつけて保存っていう操作をしたいんだけど、これはVBAで出来ますか?
別件ですがVBAでオススメの書籍があれば教えてください
424デフォルトの名無しさん (ワッチョイ 2b10-8HLh)
2021/10/17(日) 12:18:39.23ID:rQoWwir60 頭おかしくなったのか?
425デフォルトの名無しさん (ワッチョイ 2bb1-SdPo)
2021/10/17(日) 12:19:45.69ID:LVwZEVKT0 ブラウザバックしたら投稿した
すまない
Excel質問スレから来た
>>420
名前をつけて保存の前にいろいろやろうとは思ってるけど、VBA素人だからとりあえず名前をつけて保存までにしようと
VBAで出来ることはわかったのでダイマでもステマでもいいのでオススメの書籍を教えてください
すまない
Excel質問スレから来た
>>420
名前をつけて保存の前にいろいろやろうとは思ってるけど、VBA素人だからとりあえず名前をつけて保存までにしようと
VBAで出来ることはわかったのでダイマでもステマでもいいのでオススメの書籍を教えてください
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【おこめ券】物価高対策の“おこめ券”全米販は1枚477円で販売へ 鈴木農水大臣「国民の皆様に活用いただきやすいよう工夫いただいた」★2 [ぐれ★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★5 [蚤の市★]
- 神田沙也加さん元恋人で元俳優の前山剛久 六本木のメンズラウンジ勤務を報告「真叶(まなと)です。よろしく」 [muffin★]
- 「偽サッチャー」「自滅的」「時代遅れ」 高市首相の経済政策を海外メディアが酷評 ★5 [蚤の市★]
- ハリウッド実写版『ストリートファイター』初映像解禁 リュウ&春麗らのビジュアルも公開 [muffin★]
- 【麻雀】プロ雀士の岡田紗佳さんが勝訴、点数計算めぐる発言は「違法とは言えず」 大宮簡裁 [征夷大将軍★]
- 【高市悲報】片山さつき「かじ取り間違えてデフレになったらどうすんの!😡」😲 [359965264]
- ムミィ🥺いる❓🏡
- 【乞食速報】43インチ4Kモニターが19800円。テレビも見れるぞ [419111196]
- ママカースト、地獄すぎるwwwwwwwwwwwwwwwwwwwww [977790669]
- VTuber叩きが大流行してる理由、1枚の画像で解説される…!! [858219337]
- あのちゃん「匿名掲示板でわざわざ名前つけて私の粘着してる奴がいる」
