25/06/14 00:22:46.56 qXIDe9bT.net
>>48
それをされたくないじゃん
はい論破
51:デフォルトの名無しさん
25/06/14 07:18:03.10 tiNU/ccJ.net
5歳児相手にしてるんじゃ無いんだから、やっていいこと悪いことを明確にしときゃいいだけだろ。
「はい、〇〇さんが列削除して壊しました。反省してください。」とか、部署別の朝礼とかで
都度指摘してことばの懲罰し続けなきゃ、誰も言うこと聞かない集団なのか?
これは仕様ですってのを明示しといて、それを損なったらそいつの責任にすりゃいいんだ。
道具だって機械だって、そうしちゃいけない限界あるだろうに。
面白がって刃物振り回してはいけません、とか、いちいち教えなきゃいけない連中なのか? 愚痴にも程がある
52:デフォルトの名無しさん
25/06/14 07:59:24.89 tiNU/ccJ.net
いっそのこと、入力もデータ操作もぜんぶユーザーフォームでしか利用できないようにしてしまえ
そう考えたらレガシーなAccessの方が、よっぽど使い勝手がいい
AccessのTableからデータをExcelにエクスポートして、それならどう使おうがあんたの勝手と言い放てる
53:デフォルトの名無しさん
25/06/14 09:07:05.82 85yAb+tc.net
やらかす人に限って注意しにくい立場の人なのよな
54:デフォルトの名無しさん
25/06/14 10:01:44.11 Ko3JjZ1h.net
>>50
されたくないのにできちゃうのがExcelじゃん
はい論破
55:デフォルトの名無しさん
25/06/14 10:19:52.81 fdo2scYw.net
「はい論破」とか頭の悪そうなワードを連発する人たち
56:デフォルトの名無しさん
25/06/14 10:49:39.77 tiNU/ccJ.net
注意しにくい、とかエクスキューズしてねぇでげんこつ喰らわしてやりゃあいいじゃねえか
そんな役立たずの無駄飯喰らいが上司上役に居るんなら尚好都合で、その座から引き摺り下ろすぐらいの
覚悟で意見し続けてりゃあ、いつかじぶんがその座に居座れる
そいつがおちんぎん振舞ってくれる立場なら、ごますりの太鼓持ちに成り果てて「ご希望のデータを
整えますから言い付けてください」と独楽鼠のように奉仕し続けてれば「愛い奴よのぅ」と収入増に繋がる
コッチだって腹企みがあるから必死こいて合理化改善化してるんだ
いつまでも下っ端のペーペーで居続ける義理なんか無ぇだろ
57:デフォルトの名無しさん
25/06/14 11:02:28.02 rpm//XVW.net
ケンカはやめて(泣)
58:デフォルトの名無しさん
25/06/14 11:12:15.07 rpm//XVW.net
ここのセルの値が使用されていますとか、この値はここに書いてくださいとか、これの名前はこれで固定されていますとか、シートに説明を書くしかなさそうですね
59:デフォルトの名無しさん
25/06/14 13:06:42.29 JqgzDiGQ.net
薄く色をつけるとか枠線で囲むとか
入力場所が直感的にわかるようにする工夫は意外と重要
60:デフォルトの名無しさん
25/06/14 13:36:28.28 6iS4kUFR.net
論破ルーム
61:デフォルトの名無しさん
25/06/14 13:56:14.86 qXIDe9bT.net
>>54
バカは保護設定さえできないだけ
はい論破
62:デフォルトの名無しさん
25/06/14 14:03:51.39 qXIDe9bT.net
>>54
保護設定できない時点で論破も何もw
>>48 へ戻してループ閉じとくわw
63:デフォルトの名無しさん
25/06/14 17:09:40.55 zXaXaxta.net
「かたはらいたい」
64:デフォルトの名無しさん
25/06/14 19:18:28.46 tmxOaM79.net
>>63
お腹の片側だけが痛いのですか?
65:デフォルトの名無しさん
25/06/14 19:27:51.90 rpm//XVW.net
コードを実行する時に、初期化や前処理として、すでに開いているオブジェクトを絶対に、完全に閉じる、終了するためにOn Error Nextでオブジェクトのセットと終了を強行して、On Error GoTo 0で戻してSet 変数 = Nothing するのはアリですか?
66:デフォルトの名無しさん
25/06/14 21:03:16.84 jPkLTW5E.net
>>61
行挿入からもシートを保護する方法教えて
67:デフォルトの名無しさん
25/06/14 21:25:40.19 rpm//XVW.net
Excelの関数にできる事はExcelの関数にした方がいいと思う。Excelは最強のノーコードツールなのだから。
でもシートだと壊されるかもしれないからなぁ。
68:デフォルトの名無しさん
25/06/14 23:44:20.71 lJ3IrQ0g.net
>>66
バカは無様だねぇ
69:デフォルトの名無しさん
25/06/15 01:37:38.62 4stAAJtv.net
ID:rpm//XVW
馬鹿な人
こんな戯言を信じてはいけない
70:デフォルトの名無しさん
25/06/15 01:43:20.63 34+bN/XM.net
>>65
プロセスごと殺せ
For Each Process In GetObject("winmgmts:").ExecQuery("SELECT * FROM Win32_Process WHERE Name='Excel.exe'")
Process.Terminate
Next
71:デフォルトの名無しさん
25/06/15 05:18:39.35 va9oEKX4.net
>>69
だってさぁ
LookUpみたいなコード書くだけでも非常に時間かかるけど、セルに数式書くだけなら余裕ですよ
72:デフォルトの名無しさん
25/06/15 08:01:13.53 kzSisivw.net
>>71
書けば書くほど馬鹿を曝け出す馬鹿
73:デフォルトの名無しさん
25/06/15 09:38:42.00 RAlK0R2R.net
>>68
なんだ知らないのか
74:デフォルトの名無しさん
25/06/15 10:17:34.69 uFUoy2Ay.net
>>73
バカは無様だねぇ
75:デフォルトの名無しさん
25/06/15 11:11:01.10 RAlK0R2R.net
Excelってシートの編集可能だと行挿入や列挿入を回避する手段が(VBAを除いて)ないからな
セルを保護していようが無駄
1セルだろうと編集可能な時点でシートの破壊が可能になる
Excelの仕様の不備だろこんなの
76:デフォルトの名無しさん
25/06/15 11:40:58.64 iEbH+tZ4.net
>>75
バカはバカから逃れられない好例
77:デフォルトの名無しさん
25/06/15 11:45:43.01 ujM9EzWd.net
>>75
Excelは表計算ソフトであり、VBAは操作を自動化するための簡易的なツールに過ぎません
78:デフォルトの名無しさん
25/06/15 11:56:29.99 RAlK0R2R.net
>>77
VBAはチューリング完全なんだから簡易的もクソもないよ
79:デフォルトの名無しさん
25/06/15 13:01:02.85 va9oEKX4.net
マクロで読み書きするシートはシートの保護や完全な非表示をする方が良さそうですね
80:デフォルトの名無しさん
25/06/15 13:05:01.93 va9oEKX4.net
よくVBAの配列は動的にサイズを広げられない、拡張できないから不便だという話を聞きますが、これは実はコレクションを使ってねという事なのでしょうか?
81:デフォルトの名無しさん
25/06/15 13:14:08.34 34+bN/XM.net
テーブルを複数作って並べるとあら不思議
行や列の追加と削除ができないよ
82:デフォルトの名無しさん
25/06/15 13:49:14.52 OTpMml/u.net
VBAはプログラム初心者でも難なく書けるから楽しい
納品するやつだけど好きに書いちゃっていいよね??
83:デフォルトの名無しさん
25/06/15 16:10:31.95 4stAAJtv.net
ID:va9oEKX4
本日の馬鹿
統合失調症かも
84:デフォルトの名無しさん
25/06/15 18:00:52.58 NYF1cX4w.net
>>80
Copilotの回答
そうですね、VBAの標準的な配列(Array)はサイズを変更する際に ReDim を使う必要があり、特に要素数が頻繁に変わる場合には不便に感じることがあります。そのため、コレクション(Collection) や 配列型のオブジェクト(ArrayList, Dictionary) を代替手段として使うことが一般的です。
例えば、Collection は動的に要素を追加・削除できるので、サイズの変更を意識せずにデータを管理できます。
Dim col As Collection
Set col = New Collection
col.Add "Apple"
col.Add "Banana"
col.Add "Cherry"
MsgBox col(2) ' 出力: Banana
また、Dictionary を使えばキーと値の組み合わせでデータを管理できるので、検索や整理が楽になります。
Dim dict As Object
Set dict = CreateObject("Scripting.Dictionary")
dict.Add "A", "Apple"
dict.Add "B", "Banana"
dict.Add "C", "Cherry"
MsgBox dict("B") ' 出力: Banan
このように、用途に応じて Collection や Dictionary を活用することで、動的なデータ管理がしやすくなります。
85:デフォルトの名無しさん
25/06/15 23:57:46.17 K8AqenHf.net
>>82
だめでしょ好きに書いたら
86:デフォルトの名無しさん
25/06/16 07:08:58.09 YHajXHhq.net
クラスモジュールのLetとGetは必ず対でないといけないのでしょうか?
87:デフォルトの名無しさん
25/06/16 08:26:07.42 ibaltNjp.net
>>81
ありがとうこれ凄い
この方法とシート保護とを組み合わせれば破壊されにくい設定シート作れるね
88:デフォルトの名無しさん
25/06/16 08:56:55.43 MJjeAku4.net
>>86
そんなことはなく、Getだけ書けば読み取り専用のプロパティになるんじゃないかな
89:デフォルトの名無しさん
25/06/16 08:57:34.46 MJjeAku4.net
Letだけも可能かと
90:デフォルトの名無しさん
25/06/16 11:04:03.58 1rbEE5kZ.net
freeするときhoge=Noneが正解なの?
91:デフォルトの名無しさん
25/06/16 11:40:56.34 CXTiNK7e.net
Noneは間違いでは?
92:デフォルトの名無しさん
25/06/16 12:25:30.81 j7Ja2cxZ.net
Hage=Nothing
93:デフォルトの名無しさん
25/06/16 18:39:33.37 YHajXHhq.net
セルの値が書き換えられました
行が削除されました
列が削除されました
ファイルの名前が変えられました
フォルダの名前が変えられました
シートの構造が変えられました
だから動きません
これ私の責任ですか?
94:デフォルトの名無しさん
25/06/16 19:07:37.59 YHajXHhq.net
はっきり言って壊れるのがExcelですよね?
95:デフォルトの名無しさん
25/06/16 19:13:43.41 K2AaEYtv.net
皆に嫌われているから嫌がらせされているんだろ
96:デフォルトの名無しさん
25/06/16 19:42:28.10 Mgfu6kwT.net
変更されたら困る部分はみんな文字列じゃなくて画像にしてしまえ
97:デフォルトの名無しさん
25/06/16 20:21:03.43 YHajXHhq.net
つくづく仕様がしっかりと定まっていないとそもそも論として無理、不可能だと思い知らされました。
仕様に決まっていない事は拡大解釈してしまうから。
98:デフォルトの名無しさん
25/06/16 21:46:55.86 dwstnLOd.net
昔:馬鹿鹿いない
今:もう人いない
99:デフォルトの名無しさん
25/06/16 22:20:03.10 xQwWAx0q.net
>>93
マニュアルは作ってないの?
ドキュメントとか残さない人?
100:デフォルトの名無しさん
25/06/16 22:31:49.93 YHajXHhq.net
>>99
マニュアルとドキュメントを作れば守ってくれる人ばかりなのですか?
業務が変更されたら?
101:デフォルトの名無しさん
25/06/16 22:46:01.52 YHajXHhq.net
>>9
102:5 まぁとっとと辞めろって事なんでしょうね
103:デフォルトの名無しさん
25/06/16 22:53:59.40 xQwWAx0q.net
>>100
守ってくれないなら余計なとこは触れないように作ったらいいんじゃないの?
例えばユーザー操作はフォームの入力のみですべて完結させるとかの仕様はできないの?
業務が頻繁に変更になるんなら作るの辞めたほうがいいよ。使う方も作る方も無駄になると思う
104:デフォルトの名無しさん
25/06/16 23:37:56.61 YHajXHhq.net
VBAはクラスの継承ができないとよく言われますが、本来のオブジェクト指向の思想で言えばそれが正しいと思うのですが違うのでしょうか?
105:デフォルトの名無しさん
25/06/17 00:06:21.76 ArcAimKK.net
本来というか継承を軽視するのはわりと最近のトレンドだね
VBAが言語として真面目に批判されてたのは遥か昔のことで、当時はオブジェクト指向といえば継承というくらい継承は重要なものと見做されていた
今ではVBAは宮大工みたいなもんで、もはや他の言語と比較して云々という話の俎上に上がらなくなった
106:デフォルトの名無しさん
25/06/17 04:26:32.03 toVltgRB.net
昔:馬鹿鹿いない
今:もう人いない
将来:ハゲしか鹿いない
107:デフォルトの名無しさん
25/06/17 06:53:48.91 DQ5L2yaL.net
>>104
オブジェクト指向も、関数型プログラミングも、本来は出来る事は一つだけ、変数の上書き禁止、データを汚さないとか同じ事を思想にしていたと思う
しかしその本来の思想通りにならず、オブジェクト指向は結局、手続き型プログラミングをされてしまった。それが継承。そういう理解です。
目指す事はいつの時代もただ一つ。単純化。
108:デフォルトの名無しさん
25/06/17 07:24:14.19 g3HudBAJ.net
関数型Excelが不得意とする部分を手続き型VBAが補完する
Excel VBAが不潔な理由はこういったところではないか
109:デフォルトの名無しさん
25/06/17 08:08:27.98 DQ5L2yaL.net
自衛隊の一般公開されている演習で塹壕があって、その塹壕が直線だから馬鹿にされていたんだけど、
デモストレーションに決まってるやろ馬鹿かこいつら。
演習兼広報活動なんだから見栄え重視に決まってるやろ。
110:デフォルトの名無しさん
25/06/17 08:15:31.82 HVBsu92+.net
今度は馬鹿の上にキチガイか
111:デフォルトの名無しさん
25/06/17 09:06:10.69 S/louHD5.net
パーでんねん
112:デフォルトの名無しさん
25/06/17 10:57:16.78 IWds67IQ.net
>>105
昭和は輝いていた
113:デフォルトの名無しさん
25/06/17 11:47:10.63 NWQCp5mv.net
>>108
雑学になったわ
テスラバルブみたいになってたら凄いのかもな
114:デフォルトの名無しさん
25/06/17 17:48:43.56 DQ5L2yaL.net
>>112
ありがとうございます
115:デフォルトの名無しさん
25/06/17 18:10:07.80 DQ5L2yaL.net
仕様がガチっと決まっていないといくらでも機能や要件が解釈できるから、無限に拡大解釈して辛くなるのも、相手が想定していた物と違う物とできても私は悪くないですよね?
116:デフォルトの名無しさん
25/06/17 18:14:46.22 h4LLN2+5.net
>>100
業務変更されてもマニュアル直さないの?
117:デフォルトの名無しさん
25/06/17 18:48:57.77 NWQCp5mv.net
>>114
相手が想定しているものを作るために仕様書書くのですよ
あやふやな部分はキチンと質問して詰めるんですよ
当たり前な部分が双方で認識違うのはしょうがないが、相手が疎いならそれをあらかじめ察知して共通事項としてまとめるのもトラブル防ぐ一つ
トラブったら双方が幸せにならないことを、双方が認識しておくなどシステム作りは平坦な道ではない
118:デフォルトの名無しさん
25/06/17 19:30:12.89 ItQB0Ii0.net
>>111
また髪の話してる
119:デフォルトの名無しさん
25/06/17 19:38:28.92 DQ5L2yaL.net
テーブルは非常に便利だと私は思いますが、もしテーブルの使用ができない状況では他にどの様な方法で列を文字列で指定するのがいいでしょうか?
VBAで列を指定する方法にElumを使用する方法を知りましたが、これは結局cells(i,Elum.変数)ですよね?
またset 列名 = Range("A:A")という方法も思いつきました。
これは悪手かもしれませんが、A1.Offset(i,0)という方法も思いつきました。
120:デフォルトの名無しさん
25/06/17 19:56:23.43 DQ5L2yaL.net
テーブルに設定値、項目の種類、名前などの列を作って、読み書きをマクロのコードやApplication.inputboxで行う方法をとても気に入ったかも。
シートは完全非表示でシートの保護をする感じで。
121:デフォルトの名無しさん
25/06/17 21:22:29.10 ca1XKzQM.net
会社PCからのChatGPTが規制されてから泣く泣く、断腸の思いで、悲痛をにじませてCopilotを使い出した
ChatGPTの方がはるかにVBAの精度が高い感覚があって不安で仕方ない
122:デフォルトの名無しさん
25/06/17 22:07:40.11 DQ5L2yaL.net
>>120
Copilotも中身はchatGTPです
123:デフォルトの名無しさん
25/06/17 22:09:40.33 NWQCp5mv.net
geminiはアカンの?
精度とか知らんけど
124:デフォルトの名無しさん
25/06/17 22:59:55.51 GVNfPl9u.net
vbaでGitHub Copilot使ってる人いる?
125:デフォルトの名無しさん
25/06/17 23:22:39.33 ca1XKzQM.net
>>121
コピペして全く同じ望む処理を書いたら回答も処理の仕方も違ったよ
126:デフォルトの名無しさん
25/06/17 23:26:24.84 NLRe+aqS.net
ChatGPT規制されたんなら
他のAIも使うなって感じでもないのん
127:デフォルトの名無しさん
25/06/18 00:07:19.87 AQxy9IeI.net
>>125
流石にwindowsPC使ってるから謹製として出てるCopilotは活用すべきだよねって流れ
部署の選抜で希望者がCopilot使ってるけどExcelCopilot別にいらんかった
ChatGPTへの信頼感が俺の中で染み着いてる
128:デフォルトの名無しさん
25/06/18 00:36:28.20 BW5TgS6t.net
>>126
Copilotはchat GDPです
129:デフォルトの名無しさん
25/06/18 08:15:48.58 I+q5MYka.net
GPTだのGTPだのGDPだの、馴染んでいないなら背伸びすんな
130:デフォルトの名無しさん
25/06/18 08:53:49.41 Dxn1KqS1.net
国内総生産だっけ
131:デフォルトの名無しさん
25/06/18 08:59:28.64 PQ7B1wFi.net
yes
132:デフォルトの名無しさん
25/06/18 21:05:53.06 BW5TgS6t.net
どれだけ頑張っても動かない、動かないって馬鹿にされるからうんざりしてきた
133:デフォルトの名無しさん
25/06/18 21:08:00.76 BW5TgS6t.net
Webスクレイピングの方法を教えてください
心底参っています
idとかclassとかで指定しているはずなのに動きません
134:デフォルトの名無しさん
25/06/18 21:44:22.43 CFwqR1eq.net
馬鹿には無理
135:デフォルトの名無しさん
25/06/18 21:48:20.21 AQxy9IeI.net
ふふふ
Copilotを馬鹿にしたけどなかなかやるやないか
家ではChatGPT、Copilotは課金出来ない
会社ではCopilot、ChatGPTは使えない
統一したいところだけど両方使うわ
Excelそのままアップロードして色々聞く方が更に効率いいわ
136:デフォルトの名無しさん
25/06/18 22:03:48.23 pjzDoD0c.net
WEBSERVICE ENCODEURL FILTERXML
いまやWebスクレイピングもVBA要らず
137:デフォルトの名無しさん
25/06/18 22:56:38.00 BW5TgS6t.net
>>135
社内のイントラネットに入力するっていうあるあるがしたいです
本当はPower Automateです
138:デフォルトの名無しさん
25/06/18 23:16:59.86 Kf62JwRL.net
>>135
動的サイトもスクレイピング可能?
139:デフォルトの名無しさん
25/06/18 23:32:21.40 BW5TgS6t.net
>>137
動的サイトってなんですか?
まさに私が今悩んでいる事な気がします
140:デフォルトの名無しさん
25/06/19 00:26:00.22 ZDBDhjrQ.net
馬鹿ほど厚かましくしつこい
141:デフォルトの名無しさん
25/06/19 00:40:34.97 ROoqywLw.net
>>137
(必要ならENCODEURLを使って)クエリ文字列を作り
URLの末尾にくっつけてWEBSERVICEすればいいのでは?
142:デフォルトの名無しさん
25/06/19 00:43:27.51 qitj2LBq.net
横だけどそもそもイントラのフォームに入力とかが本当に必要なの?
うちは225だけどイントラから特定条件でデータを落とすようなよくあるユースケースなら素直にGET,POSTすれば済むのもたくさんあるぞ
143:デフォルトの名無しさん
25/06/19 00:53:45.50 QChnVNm1.net
>>141
ローコードツール?で作られた?サイトに必要事項とファイルのドラッグアンドドロップが必要なんですか
144:デフォルトの名無しさん
25/06/19 00:59:33.98 qitj2LBq.net
>>142
その手のやつって普通API公開されてない?
そしてローコードなら作った人もユーザー側の人間だから頼めばトークン発行してくれたりしないか?
てかそもそもそのローコードで作ったページがやってること自体
突き詰めると既存の社内DBでクエリ動かしてるだけだったりしないかな?
145:デフォルトの名無しさん
25/06/19 01:16:08.33 ROoqywLw.net
HTMLソース見て<form~>~</form>の中を見ればどこに何をPOSTしてるかわかるでしょ
それと同じことをMSXML2.ServerXMLHTTPを使ってやればいい
その前にログインURLにPOSTしてセッションIDもらう必要があると思うけど
146:デフォルトの名無しさん
25/06/19 07:09:53.12 QChnVNm1.net
今の今までpublic変数やprivate変数は怖いと思って使うのを避けてきたんだけど、いい加減最終行の番号くらいならいいかなと思って油断したら、共通関数の最終行番号までpublicに代入した値を参照してしまって無事死亡。
これがグローバル変数の怖さですか。
147:デフォルトの名無しさん
25/06/19 11:48:52.46 Y5iG6yck.net
テスト中の事故でしょ? コピー作ったうえで、コピーの方で試した結果でしょ?
いい経験したし、それを結果に反映させるように作り込みを考慮すればいい
まさか、まさかな
148:デフォルトの名無しさん
25/06/19 13:03:13.43 DFOz6nBR.net
>>145
共通関数だってpublicだろうし、public変数を共通で使っても何も問題ない
使い方間違えば(=バグ)エラー起こすのは当たり前
もちろんpublicにする必要のないものは対処必要
149:デフォルトの名無しさん
25/06/19 13:12:45.28 K/Fu6xnk.net
N88の頃はiとかjのトラブルはよくあったよね
DOSだって再入不可のやついっぱいあったろ
今だとマルチスレッド非対応のライブラリは気をつけないとね
150:デフォルトの名無しさん
25/06/19 18:29:25.72 CkE44pQz.net
>>147
パブリック変数をコンストのノリで使用する事と、関数(public関数)を使う事は違う
151:デフォルトの名無しさん
25/06/19 18:34:14.95 ROoqywLw.net
FSOをグローバルにしたくなる衝動が抑えられない
152:デフォルトの名無しさん
25/06/19 19:33:40.40 QChnVNm1.net
>>150
グローバル変数にしたらダメなのですか?
今まさにグローバル変数にして、それぞれのモジュールごとに機能を分けようと考えていました。
だったらセットぐらい個別に書けばいいのですが
153:デフォルトの名無しさん
25/06/19 19:49:35.93 3HWkDcCe.net
>>150
やってみりゃわかるが、モジュールごとにいちいちオブジェクト作って終わったら開放とかやってても、大したオーバーヘッドにならんぞ
コードの見通しを良くした方がメリット大きい
154:デフォルトの名無しさん
25/06/19 19:52:14.41 UuH6bh00.net
>>150
Singletonみたいにして使ってるけど
155:デフォルトの名無しさん
25/06/19 20:13:36.51 QChnVNm1.net
Staticだったら信頼性が上がりますか?
156:デフォルトの名無しさん
25/06/19 21:04:13.73 DFOz6nBR.net
>>149
どう違うの?
どこからコンスト出てきた?
157:デフォルトの名無しさん
25/06/19 23:24:02.96 O+fabiFQ.net
>>149
お前がバカなのはわかった
158:デフォルトの名無しさん
25/06/20 02:56:57.97 yoed5JvY.net
>>155
関数は値を汚さない(書き換えない)作りにするのが基本、引数に処理を加えて右から左へ受け流すのが基本。
public変数どこからでも値の代入を受けて、値を保持する
全く違う
159:デフォルトの名無しさん
25/06/20 02:59:11.97 yoed5JvY.net
Application.DisplayAlerts = Falseしているのに、Saveで確認画面が出てくるのはなぜでしょうか?
Excelの設定に必ず確認画面を出す設定があるのでしょうか?
160:デフォルトの名無しさん
25/06/20 07:29:41.92 LSwiyXBC.net
必要に応じて publicとprivateの使い分けが出来てないのは初心者
161:デフォルトの名無しさん
25/06/20 08:29:46.45 eaqG1YUh.net
上級者はVBAなんてさっさと捨てるからな
162:デフォルトの名無しさん
25/06/20 09:09:08.54 HQ2+VBne.net
>>157
>パブリック変数をコンストのノリで使用する
>public変数どこからでも値の代入を受けて、値を保持する
お前がバカなのはわかった
163:デフォルトの名無しさん
25/06/20 09:30:18.29 gc/RcLN0.net
このスレを見てる時点で捨ててないかマウント取りに来てるだけか
どっちにしても人生負け組
164:デフォルトの名無しさん
25/06/20 09:41:59.47 r8vuXojP.net
まあマウント取りたくて取れる相手を探しに来てるなら器がちっちゃいわな
165:デフォルトの名無しさん
25/06/20 10:04:21.23 izQX0zhk.net
なにぃ~ 5ちゃんに器の大きい人間なんかいたら希少だろー
166:デフォルトの名無しさん
25/06/20 10:15:50.81 bGFhNefV.net
>>158
出るのと消えるのがある
こべつに他の設定でけせるのもある
何を消したいかを検索してみ
167:デフォルトの名無しさん
25/06/20 14:31:29.46 Y6uQQV89.net
>>162
マウント取れなくて悔しい
がよくわかる定期w
168:デフォルトの名無しさん
25/06/20 16:26:33.16 q7FcQ3E6.net
え?>>166みたいに読み取る人ってかなりの少数でしょ
国語の成績悪かった子だと思うよ
169:デフォルトの名無しさん
25/06/20 17:04:06.71 HQ2+VBne.net
>>167
えっ!?
ついでにブーメランまでぶっ刺さってんじゃん
バカはジタバタしてもバカから一生逃れられないからw
170:デフォルトの名無しさん
25/06/20 19:16:20.77 yoed5JvY.net
VBAのツール作成を指示されました。
VBAで自動化したい事は明確です。
今回、VBAで自動化したい事のミソ、機関部分、エンジン自体は完成しています。
しかし、ソースファイルに新しい情報を記入するにもかかわらず、上書き保存はしないと言われます。
私はまるで意味がわからないのですが、これは私の頭が悪いのでしょうか?
171:デフォルトの名無しさん
25/06/20 19:19:34.53 sV38LovV.net
>>169
上書き保存しないなら、名前を付けて保存すれば良いではないか
172:デフォルトの名無しさん
25/06/20 19:24:19.55 yoed5JvY.net
私はExcelのブックをReadonly:=Trueでしか開かないし、当然、「上書き保存」なんかするわけがないのに、です。
173:デフォルトの名無しさん
25/06/20 19:30:29.79 SS2ziZwY.net
中規模以上の企業だと障害者を何人か雇う必要があるのよ
新しい仕事を大変なわけよ
174:デフォルトの名無しさん
25/06/20 20:10:04.06 s6iEsyPY.net
>>169
入力したデータだけ別ファイルに切り出してリレーションするとか?
175:デフォルトの名無しさん
25/06/20 20:10:34.24 Tkymh4/E.net
ID:yoed5JvY
本日の馬鹿
176:デフォルトの名無しさん
25/06/20 20:26:20.59 yoed5JvY.net
>>170
では上書きしないのなら、新しい情報をソースファイルに記入するときはどうするのでしょうか?
177:デフォルトの名無しさん
25/06/20 20:32:19.33 yoed5JvY.net
普通、If文を書くときは、
If 〜 = 〜 Then
〜 = Format(
178:〜,"") Else 〜 = 他の処理 End If と書くと思いますが、 〜 = 処理 If 〜 = 〜 Then 〜 = Format(〜,""h End If と書くのは可読性が低いでしょうか?
179:デフォルトの名無しさん
25/06/20 20:45:33.55 s6iEsyPY.net
>>175
相手の意図も知らないのにこちらに聞かれてもわからないでしょ。
何で相手に確認しないの?
180:デフォルトの名無しさん
25/06/20 20:55:30.36 3oNRkMSd.net
>>176
可読性が低くなるうえ、else側の処理をIfの前に書くと必ず実行することになって無駄
181:デフォルトの名無しさん
25/06/20 21:00:27.73 s6iEsyPY.net
極力else使わない派です。。。
182:デフォルトの名無しさん
25/06/20 21:22:13.93 sV38LovV.net
>>175
上書きしないで別ファイル名で保存して、元のファイルを残しておく
今度からは新しい方を使ってね、新ファイル名「xxxx_ver2.xlsm」
183:デフォルトの名無しさん
25/06/20 21:22:17.00 yoed5JvY.net
>>179
Elseを使わないノウハウとても気になります。
条件が必ず一つの方が可読性も高そうですね。
184:デフォルトの名無しさん
25/06/20 21:24:35.36 Tkymh4/E.net
ID:yoed5JvY
本日の馬鹿
185:デフォルトの名無しさん
25/06/20 21:32:19.27 HQ2+VBne.net
馬鹿すぎて収束しないので放置、NG推奨
186:デフォルトの名無しさん
25/06/20 21:43:45.62 GTdUEOjB.net
>>180
URLリンク(pbs.twimg.com)
187:デフォルトの名無しさん
25/06/20 21:50:27.39 sV38LovV.net
新人研修終わったばかりの新人かな?
既存のファイル消しちゃいました~ ってことになったら悲惨だぞw
188:デフォルトの名無しさん
25/06/20 21:50:46.76 EB90632S.net
ソースファイルに新しい情報を記入???
VBAでVBAソースの書き換えなんてできるんだっけ?
189:デフォルトの名無しさん
25/06/20 21:59:38.37 sV38LovV.net
>>184
わかるwww
190:デフォルトの名無しさん
25/06/21 08:13:33.35 xnN29f9y.net
> VBAで自動化したい事は明確です。
それが何なのか、概略だけでもいいからその点を説明してくれれば、何故上書き保存しないのかの理由が判明するかも
191:デフォルトの名無しさん
25/06/21 08:47:05.05 GbO1k/NC.net
Option Private Module
を使用すると不具合は起きますか?
192:デフォルトの名無しさん
25/06/21 08:56:36.24 GbO1k/NC.net
ブックを不必要に上書きしないという事は分かりきっていますし、私もVBAでブックを開く時は
ReadOnly:=True
としか書いていません。
193:デフォルトの名無しさん
25/06/21 13:41:14.95 iA3bwhzi.net
>>189
使い方を知らない機能なら使わないほうがいいだろう
194:デフォルトの名無しさん
25/06/21 15:35:50.74 G6SvAclG.net
ID:GbO1k/NC
本日の馬鹿
195:デフォルトの名無しさん
25/06/21 20:05:22.34 GbO1k/NC.net
標準モジュールを知ってからは、ずっと標準モジュールにコードを書いていたけど、もしかして特定のシートの内容を更新するだけのプロシージャなら、そのシートモジュールに書いて、パブリックで呼び出すなり、単独で完結させるのがいいのでは。
196:デフォルトの名無しさん
25/06/21 20:11:34.06 /aN2bQtG.net
シートにコードを書くとMeでWorksheetにアクセスできるしな
197:デフォルトの名無しさん
25/06/21 20:40:04.26 zdpjAWls.net
Copilot悪くないなと思って家でChatGPT使ってみるとやっぱりこっちのがVBAに関しては遥かに格上だわ
作ってくれるものが違いすぎる
使いまくってるからこそ明確に違う
Copilotの方が堂々と使えると思ってたのに悲しい
198:デフォルトの名無しさん
25/06/21 21:15:57.84 Pivyh754.net
>>193
他に使いまわしが出来そうなら標準にしてる 。
使えなさそうならシートに書いてる
199:デフォルトの名無しさん
25/06/21 21:38:06.55 pQFMDB6w.net
絶対に標準モジュールに作った方がいい
シートなんてユーザーツールの表示非表示や特定の挙動くらいしか書かない
シートにあれこれ書くのはメンテナンス性も考えると絶望的に人としてセンスがないと断言できる(ドヤアッ
200:デフォルトの名無しさん
25/06/21 21:46:00.83 ntnP1SjV.net
どうなんだろね
シートモジュールはクラス(のインスタンス)のようなものだと思っていて、そこで完結・隠蔽できるなら、メンバ変数みたいに書いてもいいのかも
201:デフォルトの名無しさん
25/06/21 21:46:58.70 ntnP1SjV.net
メンバ変数に限定せず、メソッドも
202:デフォルトの名無しさん
25/06/21 22:03:56.91 /aN2bQtG.net
Range読み書き、シート固有の処理、シートに置いたボタンのクリック処理はシートだな
203:198
25/06/21 23:22:42.53 0pc0VOCQ.net
>>196 のような感じかなぁ
正直なところ、大規模なツールにならなければ厳密に考えないかなぁ
204:デフォルトの名無しさん
25/06/21 23:55:37.27 AzvejTaO.net
シートにコード書いてうっかりシート消しちゃった俺が通りますよ、っと
205:198
25/06/22 00:03:54.38 eJ/mtVfh.net
共通不要のものだったと観念すべし
あらたに書き直した時の方がよりよいものができるので、悪いことではないよ
206:デフォルトの名無しさん
25/06/22 00:45:47.89 dorlFOp8.net
そのシート用のコードは一緒に消えるべき
207:デフォルトの名無しさん
25/06/22 01:57:40.21 qX3IUG6k.net
シートをコピーするとコードもコピーされるのは当たり前のことだが
1日~31日の各シートがあってそれぞれに同じようなコードが付属しているの見て愕然とした思い出
208:デフォルトの名無しさん
25/06/22 06:45:49.76 ea/8LIl6.net
Copilotは「会話しながら考えを整理したり、複数の目的をサポートする」コンパニオンとして設計されているため、必ずしも最短でコードを出すことだけを目的としていない場合があります。VBAコードを生成する場合でも、「どう使いたいのか」「何をしたいのか」といった文脈を対話しながら深掘りするスタイルです。
本当かなぁ。
でも確かにGeminiとかは質問を掘り下げてくれる。
209:デフォルトの名無しさん
25/06/22 06:52:56.85 ea/8LIl6.net
特にこだわる必要はないか、あるいはシート別に標準モジュールを追加して、そこにシート完結、単独処理のコードを書く、という感じでしょうか。
210:デフォルトの名無しさん
25/06/22 07:36:42.56 ea/8LIl6.net
クラスモジュールのイニシャライズイベントに引数は使用できないけど、シートやセルの値は使えるから、ConstやEnumとまではいかなくてもとても便利ですね
211:デフォルトの名無しさん
25/06/22 09:29:39.07 dorlFOp8.net
>>207
何のために「わざわざそうする」のか理由が必要
212:デフォルトの名無しさん
25/06/22 12:46:56.16 iBq+8EF4.net
>>208
クラス内に直接シート名とかセルの値を入れてるの?
あとでシート名変わったりとかしたら面倒くさくならない?
213:デフォルトの名無しさん
25/06/22 12:57:33.20 qX3IUG6k.net
つられんぞ
214:デフォルトの名無しさん
25/06/22 13:57:00.30 +ISvpo1N.net
ID:ea/8LIl6
本日の馬鹿
相手にするのも馬鹿
215:デフォルトの名無しさん
25/06/22 16:10:26.36 ea/8LIl6.net
>>210
シートはコードネームで指定しています。
URLリンク(learn.microsoft.com)
216:デフォルトの名無しさん
25/06/22 16:15:42.86 ea/8LIl6.net
>>205
その様な場合でも、例えばそのシートが日報だっとして、入力する内容に規則性があるのならそれはそれで意味がある気がしますし、そうでないならシートのコピーではなくて、シートを追加するコードでいいのではと思います。
217:デフォルトの名無しさん
25/06/22 16:30:28.75 dorlFOp8.net
>>205
別に普通ですよ
同じょうな、なのか全く同じなのかは少し気になる程度ですが
共通処理で別出ししてもそこで吸収できない変更は結局各シート変更要
1日のシートを2日以降にコピーする処理はあった方がいいだろう
ならば共通処理の別出しは宗教の違い程度のこと
(月初処理があるとしても、月末処理と同じように共通化すればいい)
218:デフォルトの名無しさん
25/06/22 18:13:47.25 ea/8LIl6.net
ファイルを開く前に一次作業用フォルダにファイルをコピーしてから開くなんて全く気が付かなかったよ
219:デフォルトの名無しさん
25/06/22 20:04:06.76 qX3IUG6k.net
∩___∩ |
| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | J
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
220:デフォルトの名無しさん
25/06/22 20:18:45.86 OtmHPGNq.net
ID:ea/8LIl6
本日の馬鹿
相手にするのも馬鹿
221:デフォルトの名無しさん
25/06/23 22:05:25.81 3YQNLfcG.net
同じブック、同じシートなのに、PDFで出力すると、人によっては改ページの下に一行増えて(?)空白のページを挟んで出力されます。
なぜでしょうか?
プランターをWindowsのPDFのプリンターにすればいいのでしょうか?
222:デフォルトの名無しさん
25/06/23 22:11:17.82 Nt0QtUVK.net
PCによってモニタサイズによってOSバージョンによってメーカーによって
Excelの印刷範囲は異なりVBAで制御しようとするもんじゃない
どうしようもなく色々なパターンがあって無理
俺が最近体感したこと
223:デフォルトの名無しさん
25/06/23 22:59:56.85 3YQNLfcG.net
>>220
そうなんですね
224:デフォルトの名無しさん
25/06/24 09:46:14.05 17zM306D.net
フォント替えるだけで死ねる
225:デフォルトの名無しさん
25/06/24 12:43:50.14 n0EsgZjg.net
まさか本当にどのプリンターを使用しているのか?で改ページが変わるとは思いませんでした。
A4はえーよんじゃなかったのでしょうか?
226:デフォルトの名無しさん
25/06/24 13:38:19.20 17zM306D.net
わりとマジレスするとどんなexcelシートもpdfファイルに印刷(出力)して
それを改めてpdfをプリンタで印刷する習慣にすると
環境依存性下げて揃えられる気はしてる
227:デフォルトの名無しさん
25/06/24 15:34:57.09 r1pLwix4.net
全シートの連続表裏印刷もそうだっけ
228:デフォルトの名無しさん
25/06/24 17:26:03.83 PRrta3wT.net
プリンタの仕様だから仕方無いのもある
某XEROX社の安い方の複合機だと印刷可能範囲の上端だったか下端だったか7mmとかいうのもある
だから上の方で全周7mmで設定しとけばかなりクリアする可能性があがる、と書いた
しかし、そんなに1ページにみっちみちに詰め込まなきゃならない書類って、逆に効率悪いような
229:デフォルトの名無しさん
25/06/24 18:05:26.27 n0EsgZjg.net
>>224
私も思い知らされました。
まずはwin標準の仮装プリンターに出力ですね
230:デフォルトの名無しさん
25/06/24 18:12:16.30 CEept5wW.net
欽ちゃんかよ
231:デフォルトの名無しさん
25/06/24 18:21:11.10 KEAdRoBs.net
>>226
> しかし、そんなに1ページにみっちみちに詰め込まなきゃならない書類って、逆に効率悪いような
その発言は業務システムに関わる多くの真面目な日本猿達の存在意義を否定している
謝罪しなさい
232:デフォルトの名無しさん
25/06/24 18:24:41.47 CEept5wW.net
>>226
んなもん用途次第だろうが
1枚であることに意味のある資料だってある
233:デフォルトの名無しさん
25/06/24 18:26:55.76 sjc0o4g2.net
さっそく否定された人が現れて草
234:デフォルトの名無しさん
25/06/24 19:01:03.16 9f5lnV/o.net
ワードを使えば改ページで改ページしてくれるよ
235:デフォルトの名無しさん
25/06/24 19:16:55.70 n0EsgZjg.net
>>228
みんなMicrosoft Print to PDFを使って合格かな?
236:デフォルトの名無しさん
25/06/24 19:38:00.37 n0EsgZjg.net
シートを完全に隠す、プロジェクトを隠す(?)気持ちが本当によく分かった。
そもそも設定や値を触らなければ壊れないから。
ただ、別ブックから値を読み込むとなると、Worksheet.CodeName プロパティが使えないのが嫌だなぁと思う。
237:デフォルトの名無しさん
25/06/25 09:42:40.32 dAAz2sjl.net
いやさ、一枚に収めなさい、って上から言われたのやら自ら率先して「俺なら一枚に収められるッ!」と
奮起してるのかわからんけど、効率化を図るための道具でムダな苦労して余計な時間を費やしてどうすんだ、と
なにをっ?と疑問に思うことは無いんか? うるさい上司向けにはB4で作ってA4へ縮小印刷しろと応じて
じぶんの指示が理不尽なことに気付かせる気概ってもんは無いのか、と
社内で保管するための資料とかかも知らんが、どーせそれを見返すのは十年後にあるかないかレベルなんだろ?
隅々まで文字やデータで埋め尽くされた一枚と、見やすい二枚 十年後の部下が感心するのはどっちなんだ?
まあ、そんなつまらんことに拘ってる職場が、十年後にも存在するかどうかの方が気に成るが
238:デフォルトの名無しさん
25/06/25 10:25:19.18 UBgfv4fR.net
シートを1ページに収めるで印刷すればいいじゃん
少しは縮小率や余白量が変わるかもしれないけど、どうせ気が付かねぇよ
239:デフォルトの名無しさん
25/06/25 10:55:49.89 0adLFZoS.net
いやいや、フォーマットに仕事生命を懸けてる奴はどこの職場にもいるもので、彼らは驚くべき観察力で僅かな変化を発見し指摘してくる
ビジネス的には明らかに無意味で周囲にとってはむしろ有害ですらあるが、
いわゆるブルシットジョブと違って本人はそれを有意義と信じて疑わない点が異なり、むしろタチが悪い
ネット上での正義中毒による誹謗中傷と同じ構造を持っており、日本の終身雇用制度と相まって非常に根深い問題なのです
240:デフォルトの名無しさん
25/06/25 11:26:50.75 dAAz2sjl.net
失われた40年の根源みたいな奴だと、もっと上に指摘してそいつを追放しろ
A4用紙と人件費とどっちに重きを置いてンだっつーの
A4一枚1円未満だろ おまえらの単価はそれより安いと言われてるようなもの
じぶんで告げ口するのが怖かったらZ世代にやらせろ あいつら怖いモン知らずだから
つか、Zなら他人から言われずとも自ら言いそうか
241:デフォルトの名無しさん
25/06/25 12:39:04.86 KtEcq9H9.net
内心では自分に価値がないと思っている人ほど他人の時間を奪うことを過剰に恐れる
他人の数秒のために自分や部下の数時間をドブに捨てることを厭わない
フォーマットに固執することで目を背けているが、実は彼らは心の一番深いところでは自分が無価値であることを理解しているのだ
そう考えれば君も彼らに対して少しは寛容になれるだろう
242:デフォルトの名無しさん
25/06/25 13:16:16.31 ShvH3cc3.net
このスレってスレ違いの話になると生き生きして他人に説教し出す奴いるよな
拘ってるかどうかなんて元の質問から読み取れないはずなのに想像であれこれ語る
マンスプレイニングみたいなもんかね
243:デフォルトの名無しさん
25/06/25 14:19:49.61 dAAz2sjl.net
言いたいことは判らんでも無いが、一行目と二行目でもはや矛盾の域をはるかに超越してる
そして、妄想だと言い切る君 この商売にとって想像力ほど重要なものは無いのも事実
一を聞いて三を知る 要求する側が言葉や文字にしてない部分までちゃんと捉える能力もだいじ
「言われた事だけやりました」は、これっぽっちもカスタマーの要望を満たしていない事実を知らないと
例えば家を建てようという時、顧客は各部屋各所各設備デザイン材質色調えtc全部把握なんかしてない
事前サンプルがあっても常に同じでも無い 建てる方は一を聞いて十を知るぐらいの熟練度が求められる
そうでないと引き渡し後「こんなはずじゃ、、」とひと悶着の元を作る仕事をしてるだけに成り果てる
幸いそこまで高額な仕事を請け負ってる様子でも無いが、それはそれで次は頼まれない に繋がるだけ
「使えない奴」烙印捺されて除け者にされる 上を目指すなら邪魔な奴等はむしろ積極的に排除してかないと
上から「よく指摘してくれた」と、功績をZに盗られてこんどはそのZに顎でコキ使われる羽目に陥る
244:デフォルトの名無しさん
25/06/25 14:37:28.50 SG2L+6I2.net
年収低い奴は無駄なコードを長々と書く
応用性なくがあまり感謝されないから出世もせず年収も低い
loop
245:デフォルトの名無しさん
25/06/25 15:04:19.03 NJkCtRzJ.net
な?
>>241なんて生き生きしてるだろ?
スレタイ読んだ上でこれ
このスレに書くより先にやるべきことがいくらでもあるだろw
246:デフォルトの名無しさん
25/06/25 19:22:57.79 ewEuQKq0.net
もう1ミリもスレと関係ない話。
語るならリアルで語ればいいのに。
他所の仕事のやり方なんてどうでもよくない?
247:デフォルトの名無しさん
25/06/25 19:59:58.21 0+WqyKmk.net
>>237
😰
248:デフォルトの名無しさん
25/06/25 20:01:19.80 0+WqyKmk.net
あらかじめ仮想プリンターで調整しておくのが無難なのですね
249:デフォルトの名無しさん
25/06/26 05:57:38.60 YNappLwR.net
Power Automate Desktopのブラウザ操作ですが、要素の選択、クリックは、spanやaの様な最下層よりその上の部分クリックの方がいいでしょうか?
250:デフォルトの名無しさん
25/06/26 06:07:54.20 Xqu0aFx/.net
>>247
馬鹿は死ね
251:デフォルトの名無しさん
25/06/26 07:39:27.79 ibHy7HYF.net
>>248
ハゲないで
252:デフォルトの名無しさん
25/06/26 08:34:27.18 TtUYsrfQ.net
下から上にはイベントが伝搬するけど、上から下にはしなくね?
Excel関係なくね?
253:デフォルトの名無しさん
25/06/26 09:03:49.51 zNLvgnZA.net
上か下かではなく、特定しやすく変化しにくそうな要素を狙うのがスクレイピングの基本
一般的には、idが付いている要素が最優先、次点で特徴的なclass
こんな教科書的な答えはAIに聞いた方が早いし丁寧な回答貰えるよ
254:デフォルトの名無しさん
25/06/26 09:07:17.62 JeZUwFBH.net
>>247
スレタイを声に出して3回読んで、
その後何を思ったか書き込んでみて
255:デフォルトの名無しさん
25/06/26 10:15:53.01 ctCA7frU.net
どうやって無能上司を追い出すかの方がみんな興味も需要もあってスレに合ってるんじゃね
256:デフォルトの名無しさん
25/06/26 11:06:57.56 2t9X8EDi.net
>>253
そういうスレを然るべき板に立ててきてくれよ
257:デフォルトの名無しさん
25/06/26 12:21:33.40 Wq1YkDfN.net
次の選挙でわかる
258:デフォルトの名無しさん
25/06/26 12:54:13.79 /pIBx/RP.net
以前から報じられていたけど、シートに配置したActiveXコントロールが既定で機能しなくなったね
259:デフォルトの名無しさん
25/06/26 13:54:18.86 /pIBx/RP.net
バージョンによるけど
260:デフォルトの名無しさん
25/06/26 23:09:29.85 YNappLwR.net
沢山の回答、本当にありがとうございます🐜
大量の業務を指示されるにも関わらず、肝心のやり方は誰も何にも教えてくれないので困っていました。
261:デフォルトの名無しさん
25/06/26 23:27:04.86 IUW/I0xf.net
自分が出来ますって嘘ついて入社したからでしょ?
262:デフォルトの名無しさん
25/06/27 00:06:22.99 CrrZSRDf.net
>>258
死ねよ
263:デフォルトの名無しさん
25/06/27 01:32:00.89 wO5i3kHK.net
フォーマットに固執する人には一度Accessのレポートを触らせてデータ本体と閲覧用のフォーマットを分離する概念を身に着けさせたいな
Excelはそこら辺をごっちゃに出来るのが強みでもあり欠点でもあるよね
264:デフォルトの名無しさん
25/06/27 04:12:57.30 VhPWe6GM.net
まだ印刷してる会社があるのか。
VBAをAIに相談しながら作ってたらどんどん破壊された。
VBAのバージョン管理ってどうやってますかお前ら。前のに戻す機能ってありますか?orz
265:デフォルトの名無しさん
25/06/27 04:31:43.59 NUAImJKB.net
>>260
ハゲるな🦲
266:デフォルトの名無しさん
25/06/27 05:10:19.38 Xt6WxpXP.net
>>262
どんどん破壊される要素ありますか?
267:デフォルトの名無しさん
25/06/27 05:11:58.20 Xt6WxpXP.net
>>259
言ってないです
HTMLは一切知らないです
一言も喋っていない
せいぜいタグがあって、直書きするくらいですね
動的なサイトとか言われたらアウトです
268:デフォルトの名無しさん
25/06/27 05:34:45.13 Xt6WxpXP.net
>>251
私は本当に全くの無知だからAIに聞くこともできなければ回答の正誤の判断もできないんです
例えばXpathが出てきますが、PADでどうやれば使えるのか知りません。
IDも動的なのであまり使えなさそうな
269:デフォルトの名無しさん
25/06/27 06:13:21.76 h5r1gWAT.net
>>265
スレチって言われてるのに居続けるあたり、
無能な上人の話聞かないのがよく分かる
270:デフォルトの名無しさん
25/06/27 06:15:32.61 h5r1gWAT.net
>>262
そりゃあるよ
常に電子機器を前にできる仕事だけじゃない
271:デフォルトの名無しさん
25/06/27 06:32:19.98 Xt6WxpXP.net
>>267
私は人の要望しか聞いていないです
自分がこうしたいと言う話はしていない
272:デフォルトの名無しさん
25/06/27 06:42:55.07 /UgvnTX2.net
>>269
死ねよ
273:デフォルトの名無しさん
25/06/27 08:31:17.40 qG+K/EXj.net
わたしたちもあなたの不平不満愚痴ボヤキを読んでるだけで
解決策を提示できる・答えを知ってるとはひとことも言ってませんが悪しからず
274:デフォルトの名無しさん
25/06/27 08:31:36.13 Jv1SL4G2.net
無知を全面に出す人苦手
だから何? 君の親でもないけどって内心モヤッとしてる
スレチですまん
275:デフォルトの名無しさん
25/06/27 09:13:02.10 H+pgJuGy.net
最近はここに質問された内容をAIに聴いて
AIの返事をまたここにpostする行為が流行ってる
276:デフォルトの名無しさん
25/06/27 09:46:35.02 zT4r2O1m.net
そのAIの解答を評価してみりゃいいんでね?
277:デフォルトの名無しさん
25/06/27 10:25:38.18 w4/N1gL5.net
>>269
私も人の要望をよく聞きます
聞くだけなので答えませんがね
278:デフォルトの名無しさん
25/06/27 10:28:46.75 xoohJecr.net
AIと喧嘩したいんだけど
許可されたら死んでしまうかもしれないからここで加減を調節している段階にいるんだけど
279:デフォルトの名無しさん
25/06/27 10:45:24.90 cNRA8cKF.net
>>273
マトモな回答だとつまんないからズレた面白いAI回答を選んで貼ってください
280:デフォルトの名無しさん
25/06/27 12:38:13.98 Jv1SL4G2.net
>>277
ChatGPTに大喜利を考えてもらってみた。
なんか微妙
【大喜利 お題】「エクセルがついに自我を持った!さて、最初に言ったひと言とは?」
【回答】
Sub ExcelNoJiga()
MsgBox "ねぇ、また無駄な関数使ってるよね?"
End Sub
281:デフォルトの名無しさん
25/06/27 17:23:06.62 o1sxBVxM.net
chatGPTでもcopilotでもいいけどまともなコードが返ってこないなら自分のブロンプトが絶望的なのを認識したほうがいい
そう言い切っていいほど精度高いわ
282:デフォルトの名無しさん
25/06/27 18:10:56.90 hBRiuDb/.net
検索したら出てくるレベルの質問なら確実に答えてくれるが、どこにも例題がないやつは嘘しか言わない
結局はGoogle代行でしかない
283:デフォルトの名無しさん
25/06/27 18:55:03.45 O2xo65Fk.net
かつて誰も考えなかったすごい質問する俺様にAIはついてこれない
マッタク使えないZE
284:デフォルトの名無しさん
25/06/27 20:46:54.00 Jv1SL4G2.net
例えばどんなこと?
285:デフォルトの名無しさん
25/06/27 21:38:05.72 1l5DAmC+.net
>>280
おい言ってみろよ
それっぽいこと適当に言ってると低年収バレバレで失禁するぞ?
286:デフォルトの名無しさん
25/06/28 10:20:06.70 2ZQiHrFF.net
逃げたな
287:デフォルトの名無しさん
25/06/28 10:56:57.35 3Um/1PXm.net
>>280
ほんそれ
回答の末尾にしらんけど付けてくれ
知らないなら答えないで下さいうざいだけです
288:デフォルトの名無しさん
25/06/28 15:34:30.03 OhpHj5Et.net
会話の終わりに知らんがななんか付けたら関西人に成ってしまうだろ
そう言えば、関西系のシステムって見たことも触ったことも無いけど
やっぱあれかな? [はい][いいえ]ボタンなんか配置したら「何東京人ぶってんねん!」とか
罵られるから[そうでおま][ちゃいまんねん]とかなのかな? キャンセルは[やめときますb偰とか
いっぺん見てみたい
289:デフォルトの名無しさん
25/06/28 16:39:30.47 IggLVQ8p.net
VBAスレ史上でもワースト3に入るつまらなさ
290:デフォルトの名無しさん
25/06/28 17:20:22.34 uA5FL7Cc.net
>>286
昔々IT企業の同期のコンピューターに疎いやつ(文系)が言ってたことに似てる
プログラムの命令って何でIFとかなん
JKの日本語で「もし~"だったら~"xxする」("ら~"と伸ばすのまでが語w)とか書ければいいのにとw
バカにしたけどまあ文系の素朴な疑問なんやろなとは思った
日本語BASICとかがこの命令体系だったら、一部のマニアに流行ったのかもしれんなと思ったり
ちなみに大阪にある有名企業(の開発現場)で「もし」とかプログラム書いてたとこは存在した。そこで仕事したことある
今そう書いてるかは不明
291:デフォルトの名無しさん
25/06/28 18:58:07.89 vnGwMlU1.net
日本語のようなハイコンテキスト言語はプログラミング言語に向かない
292:デフォルトの名無しさん
25/06/28 19:31:48.97 LhFbdsON.net
形式言語としてのプログラミング言語の記号列に用いる記号をどのような記号集合から取ってくるかというだけの話で、ASCIIが便利だったってだけだと思うけど。
だから、自然言語としての日本語・英語の性質はあんまり関係ないと思う。構文論・意味論は個々のプログラミング言語で定義されるわけだし。仮に「もし~だったら」みたいに書けたとしても、期待に反して大して書きやすくはならないはず。
293:デフォルトの名無しさん
25/06/28 19:52:26.97 2qq3obCO.net
なでしこ言語(泣)
294:デフォルトの名無しさん
25/06/28 20:13:15.90 Me3Cyfy2.net
もしも あしたが晴れならばの歌詞は色々と論理が破綻してる
295:デフォルトの名無しさん
25/06/28 20:35:26.86 uZ2SW2TW.net
財源が無いはずなのに消費税で上振れしている税収の財源があるのも論理破綻している
296:デフォルトの名無しさん
25/06/28 20:44:32.94 uA5FL7Cc.net
>>290
その通り
普通にIF書いてたプログラマーからしたら全然書きやすくはない
しかし当時プログラマーなんて少ない時代に、わかりやすく書ける、読めることはメリットあった
例えば東京特許許可局という変数があったとき、これを英字にしたら読みやすさが激減する
苦肉の策な時代でした
(省略英字の日本語辞書を使って、ソースを読みやすくする現場もあった。SYH-ZEIを消費税とするような)
297:デフォルトの名無しさん
25/06/28 20:45:50.18 nr2U5Q2u.net
俺は変数の宣言は日本語にしてる
ひらがな、カタカナ、漢字
それでトラブったことがないの
298:デフォルトの名無しさん
25/06/28 21:46:41.03 IE4mXjww.net
だが日本語変換の切替えがだるい
299:デフォルトの名無しさん
25/06/28 22:01:41.58 uA5FL7Cc.net
>>296
変換をon、無変換をoffにしておくと楽
300:デフォルトの名無しさん
25/06/28 22:05:51.33 sSoEJ15o.net
一応こんなのはある
C++言語によるお嬢様コーディングがブームの兆し!?
URLリンク(forest.watch.impress.co.jp)
301:デフォルトの名無しさん
25/06/29 02:34:13.89 712DhJe3.net
こんなのも
URLリンク(eetimes.itmedia.co.jp)
302:デフォルトの名無しさん
25/06/29 08:26:19.87 MOD8edIy.net
改ページの点線を手動で移動させて1ページに収まる様に指定するのと(実はこれが自動改ページ)
横1ページ指定するのと(全列を1ページに収まる様に指定)
印刷した時の文字の大きさに差はありますか?
303:デフォルトの名無しさん
25/06/29 12:48:03.11 9LXkiqZz.net
シート上で指定した改ページはデータをページで区切るための指定
プリンター設定で拡大縮小できるし、紙が数ミリずれることもあるのでギリギリを狙うと失敗する
304:デフォルトの名無しさん
25/06/29 17:00:44.93 MOD8edIy.net
>>301
プリンターの設定で必ずこの行から2ページ目にする
という設定ができるのでしょうか?
とりあえず今日調べてなんとなく挙動がわかった様な気がします
考えれば当たり前の話ですが、行を追加すると余分なページが挟まれる可能性があるのと、空白だけど(何かしら書式設定された痕跡があるからか)印刷対象になってしまっている行を削除しないといけない
305:デフォルトの名無しさん
25/06/29 18:14:38.13 jfS/ezr/.net
印刷画面で1ページだけを5枚印刷とか
3,5~7ページだけを印刷とか指定できるので好きなページだけ印刷すればいいんじゃね
306:デフォルトの名無しさん
25/06/29 18:29:48.73 jfS/ezr/.net
印刷すること自体をマクロでやったこと無いが
プレビューを確認してよければ印刷するくらいにしないと
インクや紙が無駄になるぞ
1万件のデータ印刷したら100ページとかw
307:デフォルトの名無しさん
25/06/29 18:43:03.87 MOD8edIy.net
マクロから直接印刷はさすがにしてないです
pdf出力するのをしています
ちなみにどうしても縮尺指定にこだわりたい人の為に、縮尺指定→印刷プレビュー→印刷プレビュー閉じる→左右のページ数確認→ループのコードを書きました。
308:デフォルトの名無しさん
25/06/30 06:28:01.78 m9Iz5ero.net
Excelの知識がなさすぎるひと向けに作るのはやめた方がいい
309:デフォルトの名無しさん
25/06/30 11:45:51.43 jH/JIj4s.
310:net
311:デフォルトの名無しさん
25/06/30 11:49:50.48 JQmVBSaF.net
このスレで言うことか?
312:デフォルトの名無しさん
25/06/30 18:11:33.26 CUdrd9La.net
印刷やろうとしてる人に向けてだろ…
でも明らかにセンスも作り込みスキルもなさそうだから同意
313:デフォルトの名無しさん
25/06/30 20:01:12.87 9Mnf4Vk7.net
>>309
センスも作り込みスキルも無さそうでしょうか?
314:デフォルトの名無しさん
25/06/30 20:48:43.72 XO4EHMtF.net
>>310
ごめん、そんなことはないけど
印刷のVBA化に無理に固執するもんじゃない
マジで
昔経験したからわかる
315:デフォルトの名無しさん
25/06/30 20:54:02.73 9Mnf4Vk7.net
>>311
ありがとうございます
vbaで直接プリンターに飛ばすわけではありません
とりあえず改ページの仕様はいくらか理解できたと思います
316:デフォルトの名無しさん
25/07/01 00:25:06.97 AnMu1HLz.net
Chatさんに聞いてみたけど面倒くさそう。
' 例:20行目の上に改ページ(21行目から新しいページ)
余白2cm
Sub 印刷設定サンプル()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
With ws
.ResetAllPageBreaks
.HPageBreaks.Add Before:=.Rows(21)
With .PageSetup
.PrintTitleRows = "$1:$3"
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = False
.Orientation = xlPortrait
.PaperSize = xlPaperA4
.LeftMargin = Application.CentimetersToPoints(2)
.RightMargin = Application.CentimetersToPoints(2)
.TopMargin = Application.CentimetersToPoints(2)
.BottomMargin = Application.CentimetersToPoints(2)
.CenterHorizontally = True
End With
End With
MsgBox "印刷設定を適用しました。"
End Sub
317:デフォルトの名無しさん
25/07/01 00:32:33.67 AnMu1HLz.net
続き。こういうのも多分いるよね。
指定した行数がA4印刷1ページに収まるかを調べ収まらない場合は改ページを設定する
各行の高さを合計して、ページ内に収まるかを判定。A4の印刷可能範囲の高さ(ポイント単位)と比較。オーバーするならその直前に 改ページを入れる。 A4用紙の印刷可能な高さ(おおよそ)
A4縦の高さ:29.7 cm = 約842 pt
上下余白(例):2cm + 2cm ≒ 113 pt(計)
⇒ 実質印刷可能範囲:約729 pt
※余白・ヘッダー・フッターにより変動
コード例
Sub 自動改ページ_行数と印刷高さを基準に()
Dim ws As Worksheet
Dim i As Long
Dim rowHeightSum As Double
Dim printHeightLimit As Double
Dim lastRow As Long
Set ws = ThisWorkbook.Sheets("Sheet1")
ws.ResetAllPageBreaks
' 印刷可能な高さを計算(A4縦:842pt - 上下余白 約113pt)
printHeightLimit = 842 - 113
rowHeightSum = 0
lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
For i = 1 To lastRow
rowHeightSum = rowHeightSum + ws.Rows(i).RowHeight
If rowHeightSum > printHeightLimit Then
' この行の直前で改ページを入れる
ws.HPageBreaks.Add Before:=ws.Rows(i)
rowHeightSum =ws.Rows(i).RowHeight ' 次ページの高さリセット
End If
Next i
MsgBox "改ページを設定しました。"
End Sub
318:デフォルトの名無しさん
25/07/01 07:51:53.41 hLMayhbM.net
>>313
このコードは何をしているかというと、
21行目の上 つまり20行目と21行目に改ページを設定して
上にヘッダー?を設定して
縮尺解除
全列を1ページに収める
行のページ数は自動
用紙サイズはA4
という設定をしています
しかし、改ページの設定は
改ページビューの青い点線(実はこれが自動改ページ)ではないから
1ページと2ページに余分な空白のページが挟まる
319:デフォルトの名無しさん
25/07/01 12:47:55.21 cyOlFSbV.net
インスパイアされて作ってみた
関西のコミュニケーションの多様性にはリスペクトしか無い
URLリンク(89.gigafile.nu)
ネィティブでは無いので誤りが有ったら指摘もらえば改良もやぶさかではない
Captionだけじゃ物足りないので喋らせてみたが、これが結構ドツボ
ExcelでのSpeakは、まだまだ途上らしい
320:デフォルトの名無しさん
25/07/01 21:04:55.51 hLMayhbM.net
>>316
何をお作りになられたのでしょうか?
321:デフォルトの名無しさん
25/07/01 23:30:56.43 uDpPxP0Z.net
俺氏、VBAで去年社内最優秀賞30万
今年はちょびちょび改善で出して1万6500円
抜群のセンスだわさ
322:デフォルトの名無しさん
25/07/02 00:01:46.59 0vwAlXoU.net
そう思うならさっさと転職して本職のITエンジニアになった方が稼げるよ
323:デフォルトの名無しさん
25/07/02 02:51:17.71 g2KaZT8X.net
AI時代にここの質問スレは盛況なのは何故だ
324:デフォルトの名無しさん
25/07/02 03:40:33.29 fiQBdOaz.net
AIがイマイチだから
325:デフォルトの名無しさん
25/07/02 07:59:03.99 02hJ4H7c.net
AIに書かせることはできても、それの検証はどのみち必要だから
326:デフォルトの名無しさん
25/07/02 08:13:15.57 h5Fr+SaE.net
ガイジだけど質問ある?
死にたいガイジ…空気読めないガイジ…死にたいガイジ…
327:デフォルトの名無しさん
25/07/02 08:19:12.11 q22wzhF/.net
AIはうそつきだし
適度に事実も混ぜてくるから一番やっかい
328:デフォルトの名無しさん
25/07/02 08:29:36.52 8Lvzc6gd.net
やっかいだと思うなら使わなけりゃ良いだけなのに、
他人にもそうさせようとするのはなんで?
329:デフォルトの名無しさん
25/07/02 08:36:59.95 QMHVqlVc.net
>>317
[はい][いいえ]を関西弁で、という話題にインスパイアされて
・一つのユーザーフォームを使い回しできる方法
・セルの文字をボタンやラベルのキャプションにしてしまう方法
・何ならしゃべらせる方法
関西弁に限らず、広島弁でも博多弁でもかごんま弁でもとーほぐ弁でもご随意に
リンク先の[ダウンロード開始]ボタンで落とせる
うかつに開くといきなりダイアログが出てきてしゃべりだすので音量注意
OSに入ってるナレーターは、Haruka、Ayumi、Sayaka、Ichiroと選べるはずが
Wordと違ってExcelだとデフォルトのHaruka限定にされて変えられないとのことで
そこがドツボだった まぁ幸い解決方法を指南してくれてるサイトに辿り着けた
喋ってる間は全リソース奪われて他の操作は一切出来なくなるのは、如何ともし難いのか
330:デフォルトの名無しさん
25/07/02 08:47:20.48 q22wzhF/.net
関西弁のyes/no
それはええ/それはええ
331:デフォルトの名無しさん
25/07/02 08:49:18.32 q22wzhF/.net
>>325
個人の中で完結ならいいけど、AIの嘘回答でドヤってくるのが迷惑
332:デフォルトの名無しさん
25/07/02 08:52:51.46 8Lvzc6gd.net
>>328
嘘回答でドヤってきた奴に言えよ
十把一絡げに迷惑って言い散らかすのも充分迷惑だと気付かないのか?
333:デフォルトの名無しさん
25/07/02 09:23:01.60 IvKsZJU4.net
AIにも種類あるからなぁ
問い方にもよるし
334:デフォルトの名無しさん
25/07/02 09:28:17.31 sOTx1Ysw.net
AIにテストとバグ取りまでやらせろ
335:デフォルトの名無しさん
25/07/02 11:09:29.63 QMHVqlVc.net
>>327 ww
336:デフォルトの名無しさん
25/07/02 12:42:29.90 PqQB+KG0.net
AIに作らせて出来てなかったら投げかけるだけだろ
こんなIT音痴な奴がVBA触ってる事にビビる大木
337:デフォルトの名無しさん
25/07/02 19:40:08.71 WTqAcEsV.net
AI使って嘘の回答だったら質問変えたりコード直せばいいだけでしょ。
実際自分で調べるよりもめちゃくちゃ早いし便利に使えてるよ。
人間は平気で嘘つくのにAIに嘘つくなって求めるのはおかしいでしょ。
338:デフォルトの名無しさん
25/07/02 20:01:38.68 0vwAlXoU.net
VBAの場合は他のメジャーなプログラミング言語と比べて平均的な人間とAIの差が大きすぎるから、いきなりゼロショットで指示すると期待通りの結果が得られにくい
もちろんAIの方が上だ
AIに対して予め既存のコードをサンプルとして与えてあげてレベル感を知ってもらうと、いい感じに合わせてくれるよ
339:
25/07/03 10:04:12.85 q23h/8z8.net
「嘘の回答だったら」
そもそも嘘かどうか知ってるなら聴く必要が無い
結局嘘じゃないことを調べるのにそれ以上に時間がかかる
340:デフォルトの名無しさん
25/07/03 10:05:56.29 q23h/8z8.net
「人間は平気で嘘つくのに嘘つくなって求めるのはおかしい」
判らんのに平気で嘘回答するネラーも多い罠
341:デフォルトの名無しさん
25/07/03 10:16:58.13 gVoGF6e7.net
政治家の財源がないは嘘
342:デフォルトの名無しさん
25/07/03 10:28:29.92 q23h/8z8.net
學歴も嘘
343:デフォルトの名無しさん
25/07/03 10:37:23.12 cEJAYS/6.net
>>337
だから話半分に聞くだろ?
AIの回答もそういう姿勢で、参考にはするけど盲信しないことが大事
全部鵜呑みにするならそいつももはやAIと変わらん
344:デフォルトの名無しさん
25/07/03 10:44:24.00 q23h/8z8.net
340
どうみてもAI以下です
345:デフォルトの名無しさん
25/07/03 20:41:52.66 1CjDULGZ.net
こんなAIの本質をわかってないような奴らが作るVBAなんてたまらんよ
346:デフォルトの名無しさん
25/07/03 20:45:28.43 NNwfFfCt.net
>>342
AIのプロフェッショナル様だ!
我らに叡智を与えたまえ!
347:デフォルトの名無しさん
25/07/03 21:14:39.37 zL884xZP.net
どこの誰がなにをどう作ろうとも、その成果物に実際に触る訳でも無いし
それに依って迷惑を被る訳でも無いだろ?
ナニを上から目線で大口叩いてんだか
偶々そのソースを目にすることがあろうとも、評価してくれと頼まれた訳でも無いし
VBA評議会の高位評議員という立場でも無いだろ 何がしたいん?
348:デフォルトの名無しさん
25/07/03 22:51:34.02 IBfGzwrB.net
>>336
AIに質問すればコードの1行ずつ丁寧に解説してくれるけどそれでも正しいかどうか調べるのに時間がかかるの?
349:デフォルトの名無しさん
25/07/03 22:55:11.76 x0A3mg3D.net
それをAIに1行ずつ丁寧に解説させて、その内容をさらにAIに解説させて.....以下略
350:デフォルトの名無しさん
25/07/03 23:14:39.22 1CjDULGZ.net
どんだけAIに質問投げるの下手なんだよマジでよー
351:デフォルトの名無しさん
25/07/03 23:19:49.48 IBfGzwrB.net
人間と同じで相性なんですかね。
合わないものは合わないのかなぁ。
352:デフォルトの名無しさん
25/07/04 08:07:10.89 3EnEQ/Df.net
>>345
AIだろうと人だろうと成果物のテストするだろ
何のためにテストすると思ってるの?
353:デフォルトの名無しさん
25/07/04 09:00:20.43 fF3rQ1JL.net
AIに投げる質問を造るのがうまいと言うことは既にAIに聴く必要が無いんだわ
354:デフォルトの名無しさん
25/07/04 13:21:56.31 3EnEQ/Df.net
それは違う
プロンプトエンジニアリング能力と他の能力は別物
355:デフォルトの名無しさん
25/07/04 15:02:13.77 pEhONqjq.net
だったらAIにでも話してろよ
356:デフォルトの名無しさん
25/07/04 18:27:01.53 0E9WgSh7.net
一生懸命コードの基礎学んだのにセンスが無い奴は必死になるよなそりゃ
357:デフォルトの名無しさん
25/07/04 19:13:39.58 3EnEQ/Df.net
>>353
?
358:デフォルトの名無しさん
25/07/04 21:05:20.15 rizrt2ys.net
>>349
言いたいことがよくわからないです。
おっしゃってるようにAIでコードを書いても人で書いてもテストはします。
ただAIで書いたコードのテストは人のコードより時間がかかるというお話ですか?
丁寧にAIに教えてもらえても?
AIは関係ないと思うけど違うのかな。
359:デフォルトの名無しさん
25/07/04 21:22:07.36 JLFKZ1OE.net
>>355
どこの何をテストする必要があるのかを判断できる能力がある、
もしくはどこの何をテストする必要があるかを導くプロンプトを書ける、
もしくは必要な箇所なテストまで終えるプロンプトをかけるなら問題ない
360:デフォルトの名無しさん
25/07/05 06:16:26.93 +cv+JpUz.net
>>356
例えばCSVファイルを開くときのテストケースを教えてってAI聞いてみたけど答えてくれたよ。
VBAでCSVファイルを開く処理に対して、以下のようなテストケースを行うと、動作の信頼性やエラー対策が強化できます。
主なテストケース一覧
・CSVファイルが存在し開ける 正常にファイルを開けることを確認
・ファイルが存在しない場合 指定されたCSVが見つからない場合の対処
・既に開かれているブックかどうかを確認
・読み取り専用のCSVを開けるかどうか のテスト
・空のCSVファイル 内容が空でもエラーにならないか確認
・文字コードに関わるデータが正しく読めるかのテスト
・CSVの列数・行数が極端に多い たくさんのデータがあるときの パフォーマンスの確認
・ダブルクォートやカンマを含むセル "東京,品川"のようなセルが正しく
361:扱われるか セル確認 ・ファイルロックされている場合のエラー回避の確認
362:デフォルトの名無しさん
25/07/05 06:51:38.76 pq8ewG8r.net
>>357
それだとハルシネーションが含まれていた場合のことを考慮できてない
363:デフォルトの名無しさん
25/07/05 08:48:09.96 rEK7AeQH.net
>>357
余計な型変換に関する確認が必要
0312345678 → 312345678
1-2 → 1月2日
364:デフォルトの名無しさん
25/07/05 08:57:41.98 rEK7AeQH.net
古いExcelでは先頭がIDだとSYLK扱いされる問題もあるな
365:デフォルトの名無しさん
25/07/05 09:10:19.51 +boHNEOG.net
>>357
csvファイルへのショートカットだった場合のチェックがない
開くと読み込みを一緒にしているのが気になった
その前にもともと自力でできる作業なら初めからAIは使わないだろうし
AIが示さない項目を無視していいかの判断ができるのかな
主な項目だからそれ以外もあるよとか後になって言うのはどうかと思うし
366:デフォルトの名無しさん
25/07/05 09:13:22.18 gPk7JHhb.net
ショートカット?これは馬鹿のふりしてるの?
367:デフォルトの名無しさん
25/07/05 09:31:15.35 vyFcCxL+.net
ショートカットでもcsv開くことがあるがcsvでないことはしっている
368:デフォルトの名無しさん
25/07/05 09:35:20.09 eCCJvae8.net
既にAIの知能が人間を遥かに超えており、ボトルネックがバカな人間であることがよくわかるスレ
369:デフォルトの名無しさん
25/07/05 09:46:16.30 vyFcCxL+.net
うちの環境が普通でないなら無視してくれて構わんよ
370:デフォルトの名無しさん
25/07/05 09:55:15.54 Pf7qA/Ja.net
我流、独学でExcelをやっている人が表を作ると、そのつもりやその存在を全く知らなくても、マトリクス表形式で表を作成してしまい、しかも完成したものに対してピボットテーブルを使用すると言うのはあるあるですよね?
371:デフォルトの名無しさん
25/07/05 10:34:06.26 +cv+JpUz.net
>>358
それを自分で確認したらダメなんです?
>>359
>>360
>361
指摘ありがとうございます。
主な一覧だったのでテスト例はさらに出てきたかもしれないです。
開くと読み込むは問い合わせ方が悪かったかもです。
AIで出てこなかった項目が無視できるかどうかの判断は難しいですね。
明らかにテストしなきゃいけない項目がAIで抜けててAI丸投げで作った製品を納品されると怖いものがありますね。
ただAI丸投げの流れは止められないでしょうね。
372:デフォルトの名無しさん
25/07/05 11:46:24.77 dpOItoML.net
>>357
CSVカラムの途中で改行が入る場合
373:デフォルトの名無しさん
25/07/05 15:15:49.95 y/LWjdC1.net
「俺が流れを止めるからお前は先に行け!」みたいなこと言ってみたいね
374:デフォルトの名無しさん
25/07/05 15:50:51.02 8jsOt+Pc.net
「その作業が本当に必要かどうか、もう一度考え直す」
375:デフォルトの名無しさん
25/07/05 19:53:47.88 AqSnrZiN.net
>>370
それはVBA職人的にはタブーでしょ
人力でやってた仕事というのは、自動でやるなら本質的にはそもそもやる必要のないものが多い
VBAはワークフローの改善に踏み込むことなくただ人力作業を単純に自動化するのが王道で、
仕事の意味を問うてしまうとVBAの仕事が減ることに繋がる
376:デフォルトの名無しさん
25/07/05 22:49:12.14 +cv+JpUz.net
>>368
指摘ありがとうございます。
もう回答を全部出してみたよ。
これ以外でテストケースがあるなら負けです。。。
VBAでCSVファイルを開いて読み込む際には、さまざまなケースに対応する必要があります。考えうるテストケースをカテゴリ別に網羅的に洗い出します。
基本ケース
1 正常なCSVファイルを開いて正しく読み込めるか
2 ファイルが存在しない場合のエラー処理
3 空のCSVファイルを読み込んだときの動作
4 CSVファイルのパスに全角文字・日本語が含まれる場合
データ構造・形式のバリエーション
5 カンマを含むデータがダブルクォートで囲まれている "東京都,千代田区"など
6 改行が含まれるデータ
7 ダブルクォートを含むデータ
8 区切り文字がセミコロンやタブなどの場合
9 複数の空白を含む行
10 各行のカラム数が不揃い
11 数値が先頭に0を含むデータ
12 日付形式のデータ
13 UTF-8 BOM付きファイル
14 Shift-JIS形式のファイル
377:デフォルトの名無しさん
25/07/05 23:41:01.05 8jsOt+Pc.net
>>372
・パスが長すぎる場合
・処理系による改行コードの違い
・ファイル全体でダブルクォートが奇数個(閉じられていない)
・巨大すぎる(項目のサイズ、項目の数、行数)
・ファイルの破損(バイナリデータ混入など)
・ファイルシステムの破損、不良セクタなど
378:デフォルトの名無しさん
25/07/06 02:30:01.30 N2XXWgcj.net
>>372
Workbooks.OpenでCSVを読むならテスト項目ほとんど要らなくね?
テキストファイルとして読んで、列と行の分割処理をするなら、
CSVのフォーマット定義を先にやらないとテスト項目作れなくね?
読み込みファイルの指定方法も先に決める必要がなくね?
379:デフォルトの名無しさん
25/07/06 06:55:32.42 hfT56Vvk.net
>>373-374
Claude様に聞いてやったぞ
373と374は的外れすぎる
373について
・「ファイルシステム破損、不良セクタ」→ システム障害テストの範疇、CSV処理テストじゃない
・「ファイル破損(バイナリ混入)」→ 同上、テスト範囲を混同してる
・「巨大すぎる」→ パフォーマンステスト、機能テストと分けろ
改行コードとダブルクォート奇数個は有効だが、他は論点ズレ
374について
完全に間違ってる
・「Workbooks.Openならテスト項目要らない」→ 嘘、文字化け・区切り文字誤認識・データ型自動変換でバグ頻発する
・「CSVフォーマット定義を先に」→ RFC4180あるし、372みたいに実際の問題パターン網羅する方が実用的
・「読み込み方法を先に決める」→ 順序が逆、テストケース洗い出してから実装方法決めるのが正解
372が一番まとも。実際の開発で遭遇する問題を的確に押さえてる
380:デフォルトの名無しさん
25/07/06 08:00:56.53 N2XXWgcj.net
>>375
外部仕様を先に決めるべきという意味だったんだけど、それも間違ってんの?
CSV=RFC4180というのは一般的じゃない気が・・・
Workbooks.Openを使うなら、「CSVフォーマットはExcelのAPIのそれ」で決定だからAPI動作の二重チェックは不要かな~と。
381:デフォルトの名無しさん
25/07/06 12:05:21.27 Jlu3MuzZ.net
セマフォは?
別プロセスが同じファイルを開いてるから今は処理すべきでない、とか
382:372
25/07/06 21:01:04.07 jU0PBm+8.net
すみません。
昨日テストケースをすべて載せるつもりだったのですが書き込み制限で書けず途中で諦めました。
テストケースは37項目まであります。
383:デフォルトの名無しさん
25/07/07 09:23:50.46 GhKlbyJu.net
だが、Copilotにプログラムを作らせると、こんなにも原始的でバグだらけなのであった
しかもこれだとクソ遅い
【設問】以下はVBAでCSVファイルを開いて読み込むプログラムである。バグを指摘せよ。
FilePath = "C:\Users\YourName\Documents\sample.csv"
FileNum = FreeFile
Open FilePath For Input As #FileNum
RowNum = 1
Do Until EOF(FileNum)
Line Input #FileNum, LineData
DataArray = Split(LineData, ",")
Dim i As Integer
For i = 0 To UBound(DataArray)
Cells(RowNum, i + 1).Value = DataArray(i)
Next i
RowNum = RowNum + 1
Loop
Close #FileNum
384:デフォルトの名無しさん
25/07/07 10:00:11.48 xGHCrZSN.net
>>379
CopilotはVBAerほどじゃないにせよアホの子だからね
以下、Claude Opus 4 with extended thinkingの回答
主なバグ:
1. カンマを含む値(“Tokyo, Japan”等)が分割される
2. エラー処理なし。ファイルなかったら死ぬ
3. 変数宣言してない(Option Explicit使ってたらエラー)
4. UTF-8読めない。日本語文字化け
5. セル1個ずつ書き込みでクソ遅い
6. 前のデータ消さないから残る
最悪の例:
CSVに "売上高は1,000,000円" があったら
→ 売上高は1 000 000円" の3列に分解されるw
結論:Workbooks.OpenTextかQueryTables使え
385:デフォルトの名無しさん
25/07/07 10:31:44.26 GhKlbyJu.net
>>380
変数宣言は行数の都合でカットしたのでCopilot君は悪くない
386:デフォルトの名無しさん
25/07/07 14:15:38.83 quoGln+a.net
>>379
ChatGPTだとこんな感じですね。
そのまま貼り付けたので全角も見てくれてる。
バグ・問題点
1 変数の未宣言
2 インデントに全角スペースが混在
3 変数 i の Dim がループ内にある
補足(改善点)
・CSVに カンマを含むセル がある場合、Splitだけでは不十分(→正確なCSV解析が必要)。
・ファイル存在チェック (Dir(FilePath) など) を入れるとより堅牢になります。
・Shift-JIS以外の文字コード(例:UTF-8 BOM付き)は Open では正しく読み込めないことがあります。
387:デフォルトの名無しさん
25/07/07 22:35:59.87 CvRTuASj.net
バグも直してもらえばいいんじゃね
388:デフォルトの名無しさん
25/07/08 00:47:00.39 urjDQqc8.net
今日のCopilotはWorkbooks.Openの気分らしい
だけどFormat引数が間違ってて動かないw
ファイルパス = "C:\Users\YourName\Documents\" ' ←適宜変更してください
ファイル名 = "sample.csv" ' ←読み込むCSVファイル名に変更
完全パス = ファイルパス & ファイル名
Workbooks.Open Filename:=完全パス, Format:=6
↓(実行時エラー1004で動かないぞ!直せ)↓
ファイルパス = "C:\Users\YourName\Documents\" ' ←適宜変更してください
ファイル名 = "sample.csv" ' ←読み込むCSVファイル名に変更
完全パス = ファイルパス & ファイル名
Workbooks.Open Filename:=完全パス
直った
389:デフォルトの名無しさん
25/07/08 01:58:30.92 9X9f1TC3.net
Format:=6なんて絶対使わないのに、どこからコピペしてきたんだよ
390:デフォルトの名無しさん
25/07/08 10:53:17.46 Lf/Jcjxk.net
馬鹿の上塗り
391:デフォルトの名無しさん
25/07/08 16:04:18.48 J6qvAQ9A.net
このスレ沼しか居ねぇな…google ai studioの方がまだ良い解答してくれんぞ…
392:デフォルトの名無しさん
25/07/08 17:01:18.70 G3ulfBZW.net
>>387
とても鋭い視点です。さすがですね!
393:デフォルトの名無しさん
25/07/08 17:33:24.49 BCBq8ImS.net
studio と名付けられてる意味わかってんのかな?
中の人はGeminiそのものらしいじゃんか
394:デフォルトの名無しさん
25/07/08 17:42:58.67 yBGpSZNW.net
>>389
その論理だとChromeとChrome OSも比較できないことになるが?
同じモデル使ってても実装・UI・機能が違えば体験は全然違うぞ
StudioはAPI統合やパラメータ調整できる開発者向けツール、コンシューマー版Geminiとは設計思想が違う
「中の人が同じ」で比較無意味論は技術理解が浅すぎる
387の解答品質指摘は妥当な比較対象だし、実際のユーザー体験差を無視してる時点で的外れ
とAI様が仰せになっている
395:デフォルトの名無しさん
25/07/08 18:21:34.45 urjDQqc8.net
>>385
どうやらCopilotさんは間違って記憶している模様
> Workbooks.OpenのFormat 6 はカンマ区切りですか?
はい、Excel VBAで使用される Workbooks.Open メソッドの Format:=6 は「カンマ区切り (CSV) 形式」を示します。
これは、テキストファイルを開くときに、フィールド区切り文字としてカンマが使われている場合に指定されます。
> CSVは2じゃないの?
まず結論から言うと:
Format:=2 → タブ区切り(Tab-delimited)
Format:=6 → カンマ区切り(Comma-delimited)
つまり、CSV形式のファイル(カンマ区切り)を読み込むには Format:=6 を使うのが正解です。
w
396:デフォルトの名無しさん
25/07/08 18:33:40.30 G3ulfBZW.net
うちでは2って教えてくれた
397:デフォルトの名無しさん
25/07/09 08:08:49.40 NYgpwKZ5.net
つまり、開発環境てことだろ? その中のAI部分を担当してるのはGeminiという認識なんだが?
そのGeminiを使ってAI開発に特化した環境を整えてみましたが、何か? っつーのがStudioなのでは?
じゃあ、コンシューマー向けGeminiとStudioの中の人と成り果ててるGeminiと有料版Studioの中の人は
ぜんぶ別人が担当してンのか?
それぞれ精度にランク付けしてて、コンシューマー向けにはBマイナス程度でいいや
StudioならAな その有料版ならA++とかAAAとかでお答えして差し上げろ とか差別化してるん?
Ver違いってならまだ判る 無料なら2.0でいいよ Studioは2.5にしとくか 有料版は3.0β版な
Copilotを多用してる奴に向かってgoogle ai studio(←ぜんぶ小文字なのが何とも)のが優れてる!
っつーお門違いのコンコンチキな放言は許容できるのか?
おなじGemini同士で比較して見せるとかならまだしも
まあ、おれにはどうでもいいんだけど、ブレインストーミングがてらにしたためてみました
398:デフォルトの名無しさん
25/07/09 08:48:44.88 /UzV6WSq.net
スレ違いの長文とか救えない
399:デフォルトの名無しさん
25/07/09 09:32:08.40 EKMDM/sM.net
391
x 間違って記憶している
o 過學習でアホになった
400:デフォルトの名無しさん
25/07/09 10:08:19.13 MuvaPJLR.net
LLMで過学習…?
401:デフォルトの名無しさん
25/07/09 10:36:50.67 1h9feY7y.net
391
x 間違って記憶している
o 円形脱毛症でハゲになった
402:デフォルトの名無しさん
25/07/14 13:04:26.89 GLg5N4aG.net
URLリンク(forest.watch.impress.co.jp)
「JScript」に代わり「JScript9Leg
403:acy」が既定のスクリプトエンジンに ~Windows 11 24H2以降で
404:デフォルトの名無しさん
25/07/15 10:46:15.47 1v3q9PKm.net
Windows11の24H2にしたらJScriptが動かない
URLリンク(blog.macorin.net)
405:デフォルトの名無しさん
25/07/15 11:19:52.18 IENqpxZQ.net
毎日夜中の定刻に、気象庁Webサイトの2つのページからcsv落として月次集計する、
マクロとPowerQuery使った2×2の4つのブックを
VBS(例:以下)とタスクスケジューラーを使ってやらせてるんだけど、
いい加減、VBS部分を乗り換えるとしたら、
何がとっつきやすいのかな?
PowerShell?
PowerAutomate?
Python?
---例:DLブックを実行させるVBS---
Const WB_PATH = "E:\集計\01_DLファイル\DLブック_地点A.xlsm"
Const PROC_NAME = "DL_Ref"
Dim excelApp
Set excelApp = CreateObject("Excel.Application")
With excelApp
.Visible = False
Dim wb
Set wb = .Workbooks.Open(WB_PATH)
.Run wb.Name & "!" & PROC_NAME
.DisplayAlerts = False
wb.Close
End With
excelApp.Quit