1 名前:デフォルトの名無しさん mailto:sage [2023/05/31(水) 08:23:38.97 ID:4RV1IxmB.net] ExcelのVBAに関する質問スレ コード書き込みや作成依頼もOK 次スレは>>980 が立てること 無理なら細かく安価指定 関連スレ Excel VBA 質問スレ Part79(ワッチョイあり) https://mevius.5ch.net/test/read.cgi/tech/1674875532/ ※前スレ Excel VBA 質問スレ Part79 https://mevius.5ch.net/test/read.cgi/tech/1674874007/
449 名前:デフォルトの名無しさん [2024/01/28(日) 09:25:58.21 ID:P/o+j6FX.net] Excel VBAの嫌なところはUTF-8のテキストファイルを扱うときだな UTF-8とは相性が最悪で入力して出力するときになぜか一部がどこかに消える
450 名前:デフォルトの名無しさん mailto:sage [2024/01/28(日) 14:12:49.59 ID:GlU8zkf4.net] >>429 iがintegerだとされたんじゃなくて、右辺がintegerだと判定されて、右辺の計算でオーバーフローしてる >>431 定数の値じゃなくて、定数の型できまるはず 結論はConstにもちゃんと型指定しろ、ってことだ ちなみに#は倍精度浮動小数点数らしいぞ >>432 ADOのバージョンは? 一部バージョンでライブラリがばぐってたはず
451 名前:デフォルトの名無しさん mailto:sage [2024/01/28(日) 15:58:37.92 ID:FpdhcBpS.net] >>428 やっぱりそうだよね?自分の周りでも64bitに置き換えてる企業ってほぼないので しかしここでは64bitが当たり前みたいだし、この手の質問を過去にもしたけどまともな回答得られたことないしで、自分の知らないところでは64bitが当たり前な業界もそれなりにあるのかな?と思ってしまった 64bit移行は取引先が多ければ多いほどハードルが高そう 世間一般的に32bitを切り捨てられるタイミングはいつ頃になるのかな 「xls」ですら切り捨てられない企業を見てると、そんなのは当分先になりそうなイメージ もしくはMSが完全互換を達成してくれるか
452 名前:426 [2024/01/28(日) 16:52:07.92 ID:v9jfp3rb.net] イロイロ、ありがとう さて、ま、念の為、何というか、 Dim i as long Dim x as long Dim y as long Dim BDATA(約25000000) as BYTE For x = 0 to 3840 - 1 For y = 0 to 2160 - 1 i = 3840 * 3 * y + 3 * x BDATA(i) = 255 BDATA(i+1) = 0 BDATA(i+2) = 0 next next は、モチロン、駄目なプログラミング さて、いや。呟きです。 とにかく、ありがとう
453 名前:デフォルトの名無しさん mailto:sage [2024/01/28(日) 19:19:46.49 ID:oSgnhTDB.net] Doevents 入れないのか
454 名前:デフォルトの名無しさん mailto:sage [2024/01/28(日) 19:53:30.89 ID:PqCzO7aX.net] >>445 いわゆる大手企業だけど64bit導入済みだよ 元々アドイン禁止だから影響もほぼなし 一部VBAを多少手直ししたくらい
455 名前:デフォルトの名無しさん [2024/01/28(日) 19:54:43.44 ID:I0zbqNbd.net] Doevents 入れないのだ これでいいのだ バカボンのパパなのだ
456 名前:デフォルトの名無しさん [2024/01/28(日) 21:08:37.59 ID:v9jfp3rb.net] Do Dim i as long Dim x as long Dim y as long Dim BDATA(約25000000) as BYTE For x = 0 to 3840 - 1 cells(1,"A") = x DoEvents '''✦✦DoEvents 入れてみた \(^o^)/ For y = 0 to 2160 - 1 i = 3840# * 3# * y + 3# * x BDATA(i) = 255 next next って感じでやると A1のセル、すなわちセルA1が xの値がドンドン更新表示され、面白いです。 面白いから、これで、良いのだぁぁぁぁぁぁ
457 名前:447 [2024/01/28(日) 21:15:24.83 ID:v9jfp3rb.net] >>450 自己スレ でも、DoEvents なくても xの値は表示されるな🤔 なくてもヨイのだ。 少しギコチナイ動きになる気がするが、 気のせいなら、気にしなくてヨイのだ。🥳
458 名前:デフォルトの名無しさん mailto:sage [2024/01/28(日) 21:19:00.87 ID:09VyNDQR.net] Excel VBAでDVDドライブをオープンさせることはできますか? 部署内のPC端末のDVDドライブを一斉にオープンさせるドッキリをしたいです
459 名前:デフォルトの名無しさん mailto:sage [2024/01/29(月) 05:09:16.17 ID:XzFB+619.net] >>444 型指定しないと、値によって型が決まる 32767以下の整数だと自動的にIntegerになる
460 名前:デフォルトの名無しさん mailto:sage [2024/01/29(月) 05:16:06.75 ID:XzFB+619.net] 業務アプリをVBAで書いてるとこがあってな 明治時代に創業してみんなも知ってる一部上場企業だよ 膨大な古いアプリを今さら改修とかできないから、なかなか64bitに移行できないんだよ
461 名前:デフォルトの名無しさん [2024/01/29(月) 05:53:44.09 ID:evC8W0zb.net] んー、? Dim b(40000) as byte Dim i as long ─途中 省略─ for i=0 to 40000 b(i) = 128 b(i+1) = 128 b(i+2) = 128 next は、上手くいく予感を感じます。 もしかして、b(i+1) = 128で iが32000一寸超えたあたりで なんかある気もしますが、杞憂のような気もするし 実験するのも面倒だな だってOSや実行環境やバージョンで、 実験結果に再現性がない気もするし てか、64bitのEXCELにすれば、 配列の要素数的に動画も丸ごとメモリに読み込ませられる ぢゃーーーん。メモリが、なくなって 障害が、発生が、するなんてことは、アリエナイ❓ b(i+clng(1)) = 128 にしなくてもOkかな b(i+1#) = 128 にしようかな それとも b(i+1&) = 128 にしようかな &は文字連結だけどこの場合は ま、1をlongで解釈というか んー、まぁいいや。
462 名前:デフォルトの名無しさん [2024/01/29(月) 06:03:43.33 ID:evC8W0zb.net] 東証一部というか東京一部というか 東証プライムというか東京プライムというか とにかく、変な名前に変更するのは、反対 64bitにするのは、反対の反対の反対の…なのだ というか、東証一部なら名門だね。 というか、富士通とかNECとか東芝とかパナソニックとか 社内のは、まだ32ビットのエクセルなのかな❓ これらも、一部を除いて東証一部上場だな
463 名前:443 [2024/01/29(月) 06:14:49.65 ID:AKFLgh7s.net] ん、いろんな人による いろんなアドバイス、ありがとう i = 3840 * 3 * y + 3 * x でオーバーフローエラーになったら 今度は、 i = 3840 * 3 * y + 3 * x + 32768 - 32768 って、修正してみようかな❓ ゼッタイ、上手くいくハズだよね❓ でも、面倒だし、次回も3は3#にしゃおうかな by 姑息な対応するデバッグプログラマでした
464 名前:454 自作自演ぢゃありません。∵自己レビュー [2024/01/29(月) 08:04:04.78 ID:AKFLgh7s.net] >>0454 1h40min前の自分に返信してあげる。 いま、1h40min前の自分の通り実験したけど、 ❌ i = 3840 * 3 * y + 3 * x + 32768 - 32768 オバーフローエラーになっちゃたよん。 ちなみに、#とか定数にヤケクソでつけてもいいけどさ やっぱり、&の方がヨイ 🙆 i = 3840& * 3& * y + 3& * x って感じでバッチリだ でも、 ❌ i = 1& - 1& + 3840 * 3 * y + 3 * x の様な気もする。∵イロイロやってみた感触 というか、#とか&を定数の後にくっつけるのってヤヴァイ 様な気もするが、とにかく、珍しく、EXCELがバッチリ動いた\(^o^)/
465 名前:455 [2024/01/29(月) 08:12:40.14 ID:AKFLgh7s.net] >>458 5min前の自分に返信してあげる その数式ないの定数 3とか3840とかの全て、全て、全部に Clng(3)とかClng(3840)に置き換えなさい。 神からお告げなのだ。ていうか、今実験してみた結果ぢゃ でも、&とか#の方が短くて見易い
466 名前:デフォルトの名無しさん mailto:sage [2024/01/29(月) 08:31:12.61 ID:yN7n5dLr.net] >>454 64bit問題生じて何年経ってると思ってるんだよ 流石に後手に回りすぎ
467 名前:デフォルトの名無しさん [2024/01/29(月) 10:01:16.80 ID:AKFLgh7s.net] VBAには、on error goto という、 エラーが発生しても、エラー発生の行でエラー発生せず 処理を続行させちゃう ウレピィー機能が存在がするようぢゃ、 i = 3*なんちゃらかんちゃら数式 ……🐌 BDATA(i) = 128 というコードで🐌の行でオバーフローエラーに なってももしかするとErrをトラップ💃 BDATA(i) = 128 を実行させれるコードも可能ぢゃ モチロン、配列BDATAの内容はメチャクチャだが 気にしなければ、これでヨシ(๑•̀ㅂ•́)و✧ だって、エラー発生しちゃったらやだろ😎 いや、それより、ドンドン64ビットのエクセルに 移行して、ドンドンバグを潰そう。 テーブルが壊れてバグ発生させても、キニシナイ ていうか、その方が、バグ対策のノウハウが バッチリになって株価急上昇の予感がしてきました。 東証プライムどんどん📈しろっう。 てか、そうだ今日は、平日だっけ? 株価をチェックしなければいけないので、では また今度だ
468 名前:デフォルトの名無しさん [2024/01/29(月) 10:08:59.28 ID:eJ6L0Jkg.net] >>454 改修できないのは能力不足なだけでは
469 名前:デフォルトの名無しさん mailto:sage [2024/01/29(月) 11:00:49.76 ID:L9ToZbOs.net] >>457 i = 32768 + 3840 * 3 * y + 3 * x - 32768
470 名前:デフォルトの名無しさん mailto:sage [2024/02/01(木) 09:50:16.10 ID:qkLEEfNI.net] >>456 NECはLANPLAN、LANWORDだよ。
471 名前:デフォルトの名無しさん [2024/02/06(火) 21:11:58.14 ID:tk+LFJYg.net] 以下のコードで構文エラーになる、ならない区別がつかなくて質問します。 クラスモジュール Function 背景色(ByVal range1 As Range, ByVal range2 As Range) Dim lng_color As Long lng_color = range2.Interior.Color range1.Interior.Color = lng_color End Function 標準モジュール Sub test() Dim rng1 As Range Dim rng2 As Range Dim mc As New Class1 Set rng1 = Range("C3") 'C3の色を Set rng2 = Range("A3") 'A3に適用する Dim str As String str = mc.背景色(rng1, rng2) End Sub これで、str=の部分をなくすと構文エラーになってしまうのはなぜでしょうか?
472 名前:デフォルトの名無しさん mailto:sage [2024/02/06(火) 21:29:12.00 ID:rCver0bK.net] うちではならない
473 名前:デフォルトの名無しさん [2024/02/06(火) 22:51:37.41 ID:8QVr9gKs.net] Functionだから? callで呼んだり、Subに変えては。
474 名前:デフォルトの名無しさん mailto:sage [2024/02/07(水) 00:03:31.59 ID:/C0r4gOv.net] >>467 の言うとおりだと思うけど、Subにしても Call はつけないとダメかな それか引数を囲うカッコをつけないか
475 名前:465 mailto:sage [2024/02/07(水) 00:06:06.47 ID:/C0r4gOv.net] ごめん、クラスモジュールだとどうだか分からないや >>468 は撤回します ごめんなさい
476 名前:デフォルトの名無しさん mailto:sage [2024/02/07(水) 05:24:58.93 ID:ptzdB5MT.net] >>465 VBAの謎な仕様の一つ Functionの戻り値を受け取らない時、Functionは関数ではなくステートメントの一種と解釈されてしまう(らしい) ステートメントの書き方が、VBAでは「命令と引数を空白で区切る」というルールになっているから ステートメントの具体的な例を挙げると、 Dim a, b これを Dim (a, b) と書くとエラーになるのと一緒 Callで呼んだときに挙動が変わるのは、こんどは関数がCallステートメントのパラメータになるから、構文の解釈が変わる さらにややこしいことに、引数が1つだとエラーにならない これは、カッコが演算子とも解釈できてしまうから a = b を a = (b) と書いても、無意味だけどエラーにならないのと同じで、カッコが必要なケースではそのまま解釈され、必要ないケースでは演算子とみなすことが可能なので結局エラーにならない
477 名前:デフォルトの名無しさん [2024/02/07(水) 05:54:42.53 ID:TWD16jEo.net] 皆様ありがとうございます。 VBA学習を始めて間もないので、RangeがなぜStringに入るのだろう? などと考えて悩んでいました。 とりあえず空白にすればいいのかな?と思い、 mc.背景色 rng1, rng2 としたらエラーなく実行できました。
478 名前:デフォルトの名無しさん mailto:sage [2024/02/07(水) 08:03:51.30 ID:2Cso54Y+.net] >>470 謎も何もパーサの都合
479 名前:デフォルトの名無しさん [2024/02/07(水) 10:12:34.77 ID:p6WTk8Ln.net] カッコ悪っ
480 名前:デフォルトの名無しさん mailto:sage [2024/02/07(水) 21:43:51.95 ID:rJek+uci.net] (悪)
481 名前:デフォルトの名無しさん [2024/02/08(木) 15:06:23.74 ID:AG84sVu5.net] workbookとworksheetsを両方変数で繋げるにはどうしたらよいのでしょうか? それぞれsetでwb, wsとした場合、 ws.cells(n,n)やwb.worksheets(n).cells(x,x)なんかは問題なく動くのですがwb.ws.,,,,とするとエラーが起きてしまいます
482 名前:デフォルトの名無しさん mailto:sage [2024/02/08(木) 16:06:23.33 ID:5OVFjneR.net] ワークシートの親ワークブックは特定されるので指定は不要 wsだけで使えば良い 相互参照したいなら set ws = wb.Worksheets(n) set wb = ws.Parent
483 名前:デフォルトの名無しさん mailto:sage [2024/02/08(木) 17:26:16.95 ID:EcJUi253.net] >>475 Setしたwsにはwb要素も含まれてて変更できない 複数のブックでシート名を共通にしたい時はWorksheetオブジェクトじゃなくて文字列にシート名を入れる Dim stnam As String stnam = "Sheet1" wb.Worksheets(stnam) みたいに書く
484 名前:デフォルトの名無しさん [2024/02/08(木) 19:08:54.01 ID:AG84sVu5.net] 出来ました!ありがとうございます!
485 名前:デフォルトの名無しさん mailto:sage [2024/02/08(木) 20:49:29.84 ID:szZI865F.net] ListBoxの要素をクリックしても枠線が表示されるだけで 青色に反転しないことが時々あるのですが、何故でしょうか?
486 名前:デフォルトの名無しさん mailto:sage [2024/02/09(金) 12:00:32.11 ID:VUVEy040.net] エスパーするとデザインモードになっていたりマクロ禁止状態だったりするから
487 名前:476 mailto:sage [2024/02/09(金) 21:03:02.70 ID:Essi4uO7.net] どうもListBoxの端っこをクリックするとListBox自体がアクティブになり 前回選択していた要素にフォーカスが当たるようです(フォーカスするだけで選択はしない、青色にも反転しない)
488 名前:デフォルトの名無しさん mailto:sage [2024/02/10(土) 12:07:45.28 ID:oVCg53lr.net] プロパティウィンドウで何か設定イジったとか?
489 名前:デフォルトの名無しさん [2024/02/10(土) 22:18:00.43 ID:3oPB1Oyo.net] VBAベーシック合格したから、スタンダードも挑戦したい。 その前に 「日商プログラミング検定 STANDARD VBA」をAmazonで買って読んでみたけど、 載ってるプログラムが糞すぎて話にならない。 俺が10行で書ける奴を40行ぐらいでやってる。 買って損した。
490 名前:デフォルトの名無しさん [2024/02/10(土) 22:52:32.27 ID:3oPB1Oyo.net] >>183 ChatGPTで教えてもらった。 これからやってみるw Sub GetVegetableInfo() Dim sheet1 As Worksheet Dim sheet2 As Worksheet Dim lastRow As Long Dim i As Integer ' 「Sheet1」と「Sheet2」を取得 Set sheet1 = Worksheets("Sheet1") Set sheet2 = Worksheets("Sheet2") ' 「Sheet2」のA1:B5を順番に処理 For i = 1 To 5 ' 「Sheet1」で条件に合う最後の行を取得 lastRow = sheet1.Cells(sheet1.Rows.Count, "A").End(xlUp).Row Do While lastRow > 1 And (sheet1.Cells(lastRow, 1).Value <> sheet2.Cells(i, 1).Value _ Or sheet1.Cells(lastRow, 2).Value <> sheet2.Cells(i, 2).Value) lastRow = lastRow - 1 Loop
491 名前:デフォルトの名無しさん [2024/02/10(土) 22:52:57.45 ID:3oPB1Oyo.net] 続き ' 購入年月日と価格を「Sheet2」に記入 If lastRow > 1 Then sheet2.Cells(i, 3).Value = sheet1.Cells(lastRow, 3).Value sheet2.Cells(i, 4).Value = sheet1.Cells(lastRow, 4).Value Else sheet2.Cells(i, 3).Value = "条件に合うデータが見つかりません" sheet2.Cells(i, 4).Value = "条件に合うデータが見つかりません" End If Next i End Sub
492 名前:デフォルトの名無しさん [2024/02/10(土) 22:59:51.09 ID:3oPB1Oyo.net] 一発でできたw ChatGPTはすごいww
493 名前:デフォルトの名無しさん [2024/02/10(土) 23:03:48.85 ID:3oPB1Oyo.net] こういう文を自分で分かるようになるまで1行づつ勉強していけば良いのかな。
494 名前:デフォルトの名無しさん [2024/02/11(日) 00:18:22.77 ID:gsh865m+.net] >>487 こんなのがわからん人には一生無理だよ
495 名前:デフォルトの名無しさん [2024/02/11(日) 08:41:00.98 ID:4jVVlROf.net] Excel2019だから仕方ないけど、2021や365ならワークシート関数で簡単に出来る内容だね。
496 名前:フォルトの名無しさん mailto:sage [2024/02/11(日) 10:25:34.29 ID:ectqOeXX.net] んなこたーない 千里の道も一歩から
497 名前:デフォルトの名無しさん [2024/02/11(日) 11:10:11.68 ID:KVjYyEwK.net] >>490 賛成
498 名前:デフォルトの名無しさん mailto:sage [2024/02/11(日) 13:11:20.60 ID:Uyf5FkAB.net] 構造体の項目名を取ってくることって可能 Type type社員 番号 As Long 氏名 As String 所属 As String 住所 As String 電話 As String End Type こんな風になってる場合、 「番号」、「氏名」とかの項目名を取ってきたい
499 名前:デフォルトの名無しさん mailto:sage [2024/02/11(日) 13:13:40.26 ID:ODGSF/9t.net] Chatgptに頼るとそれが癖になりそうでよ。
500 名前:デフォルトの名無しさん mailto:sage [2024/02/11(日) 13:31:41.97 ID:RI7D2x7j.net] >>492 VBAでは無理 VB(.net)ならできるんだけど
501 名前:デフォルトの名無しさん [2024/02/11(日) 13:57:26.10 ID:KVjYyEwK.net] >>493 そもそも、こういう計算関係の問題ならChatGPTの方が人間よりも数万倍能力高いのに、どうして人間がやらなきゃいけないのか?
502 名前:デフォルトの名無しさん mailto:sage [2024/02/11(日) 14:03:59.06 ID:Uyf5FkAB.net] >>494 てことは、構造体の中身を一括でワークシートに書き出すことも不可能? Cells(1,1)= type社員 みたいなことはできない?
503 名前:デフォルトの名無しさん [2024/02/11(日) 15:16:37.77 ID:1/wSFivK.net] 千里は約3900kmだから歩くのはちょっと無理かな
504 名前:デフォルトの名無しさん mailto:sage [2024/02/11(日) 17:35:01.49 ID:N93Z/F6t.net] >>497 「千里之行 始於足下 (千里の道も一歩から)」は2500年前の中国が発祥の言葉 古代中国の単位で換算すると千里は415kmだから、実は江戸~伊勢神宮の460kmより短いという
505 名前:デフォルトの名無しさん mailto:sage [2024/02/11(日) 17:37:11.13 ID:n3f0KEJ+.net] >>495 失業者が増えるのはまずいから、わざと無駄な仕事を増やしてる どこの業界でもね
506 名前:デフォルトの名無しさん mailto:sage [2024/02/11(日) 18:53:55.53 ID:ODGSF/9t.net] Excelもそのうち完全自動化になって手作業が無くなると聞いたしね。
507 名前:デフォルトの名無しさん mailto:sage [2024/02/12(月) 02:43:42.58 ID:rGOG+Ewu.net] 完全自動化にはならない 少なくとも仕様をExcelに伝えないといけない しかも正確に これは結構大変だと思う
508 名前:デフォルトの名無しさん [2024/02/12(月) 06:48:14.86 ID:+xqPKZXk.net] 結局、馬鹿にできることは限られる
509 名前:デフォルトの名無しさん [2024/02/12(月) 07:23:59.37 ID:QaD8MNfw.net] いまだに古いexcel使っているから関係ない
510 名前:デフォルトの名無しさん mailto:sage [2024/02/12(月) 15:27:03.31 ID:Ey14GliG.net] 何かの記事か動画で、ケースの中にノーパソがあって、csvから自動で読み込んで手作業の如く加工したり関数が自動的に入力されているのを見た記憶ある。 将来的に完全自動になるとかなんとか
511 名前:デフォルトの名無しさん mailto:sage [2024/02/12(月) 17:36:44.35 ID:rGOG+Ewu.net] それだけなら今の技術でもできる 問題は入力をどう捌くか 仕様は人間にしかわからないし ケース分けはすぐに複雑になるので うまく指示しないと すぐに保守不能になる
512 名前:デフォルトの名無しさん [2024/02/12(月) 22:27:01.21 ID:+xqPKZXk.net] >>504 頭悪そう
513 名前:デフォルトの名無しさん [2024/02/12(月) 23:37:18.45 ID:Ulhaap3A.net] どんなにいいものでも頭の悪い人には宝の持ち腐れになるな
514 名前:デフォルトの名無しさん mailto:sage [2024/02/13(火) 01:00:51.32 ID:rVlFUe7M.net] 高度な科学技術は(バカには)魔法と区別がつかない
515 名前:デフォルトの名無しさん mailto:sage [2024/02/13(火) 01:02:28.32 ID:RhcUAVku.net] 「猿でもわかるようにしろ」と猿が言う
516 名前:デフォルトの名無しさん mailto:sage [2024/02/13(火) 11:52:54.11 ID:5h/UERvP.net] 例のRPAの事か。
517 名前:デフォルトの名無しさん [2024/02/13(火) 15:20:55.90 ID:A8w0YSx0.net] DIM 社員番号 As Long DIM 社員氏名(99) As String DIM 社員所属(99) As String DIM 社員住所(99) As String DIM 社員電話(99) As String では、🙅ですか❓
518 名前:デフォルトの名無しさん mailto:sage [2024/02/13(火) 18:34:38.38 ID:l+mukg6e.net] 200ぐらいは必要だな
519 名前:デフォルトの名無しさん mailto:sage [2024/02/13(火) 19:29:15.56 ID:gT/Ie7tm.net] chatgptに聞いてみたら?
520 名前:デフォルトの名無しさん mailto:sage [2024/02/13(火) 19:50:47.77 ID:NapwYJ4w.net] ChatGPTに書かせまくってます
521 名前:デフォルトの名無しさん mailto:sage [2024/02/14(水) 01:36:32.34 ID:TDgQUPLD.net] そんなのに頼っていたらスキル上がらないだろ
522 名前:デフォルトの名無しさん mailto:sage [2024/02/14(水) 19:27:17.85 ID:39zPDMmV.net] AIが先に学習するんじゃね
523 名前:デフォルトの名無しさん [2024/02/14(水) 20:58:16.61 ID:tCnXYZyu.net] >>515 ChatGPTにできない事でスキル上げしないと将来無いと思ってる。
524 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 05:36:09.01 ID:y76Vsl10.net] ChatGPTの倒し方?
525 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 07:21:00.00 ID:dt58r8nV.net] ChatGpt、間違っていたり動かないコードを提示される場合あるみたいね。
526 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 09:00:47.65 ID:rrljL6vB.net] そら完全じゃないからな、やれば分かるよ でも理解してればすごい便利
527 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 11:17:18.79 ID:e8ChaJiV.net] わざわざ聞くのはコマンドを知らないから? Excelなら記録でわかるから機能を知らないからか? もしくはキー入力が遅い? 文法すら分からないってのは流石に使えないだろうし
528 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 11:54:24.32 ID:rrljL6vB.net] 普段色んな言語扱ってると思い出せないときとかあるからね 「この言語ってlengthとcountどっちだったっけ、これanyとか使えたっけ?」 「配列ってnewとかだっけ」 「あれこの言語const,define,var,val,letどれが使えないんだっけ」 「Integerはintでいいんだっけ、あれInt32だっけ」 みたいな細かい所を確認したりせずに まるっとどーんと一旦サンプルとして形にできるからラク アルゴリズムとかはそこから見直せば良い vbeはcopilot対応してないし(よね?)
529 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 17:50:12.85 ID:UJmHWKAW.net] 色んな言語使ってない人は迷わないってことならそれでいいんじゃね
530 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 18:44:29.22 ID:00CMZm7v.net] まあそらVBA専従なら自分で書きはじめたほうが早いかもしらんね
531 名前:デフォルトの名無しさん mailto:sage [2024/02/15(木) 18:47:58.30 ID:G5y7v+SU.net] VBAの知識あります でも職層も低く若手に馬鹿にされまくってますって化石おじさんいるわ 絶望的に発想もセンスも乏しい そんなことVBAでやるまでもないそんな処理意味ないけどってとこまで まるでお前らです
532 名前:デフォルトの名無しさん [2024/02/15(木) 19:21:27.05 ID:SrphZNWT.net] >>522 xxx まるっと o まるごと 変な言葉使うな。方言らしいけど。
533 名前:デフォルトの名無しさん mailto:sage [2024/02/18(日) 19:40:32.04 ID:Jd2tuU++.net] 保存に失敗したのか何なのか分からんが 標準モジュールの中身が突然消えた(フォームは残ってる) 復旧も無理そうなので、今度の連休にまた最初から書き直すことにする
534 名前:デフォルトの名無しさん mailto:sage [2024/02/18(日) 19:46:11.18 ID:+FxfYFYB.net] windowsにもExcelにも自動バックアップ機能あるぞ うっかり上書き保存しても前のファイルが取り戻せる ぐぐって設定しとけ
535 名前:デフォルトの名無しさん mailto:sage [2024/02/18(日) 20:04:54.83 ID:Jd2tuU++.net] 今度からそうする 自分の知らないうちにどこか分からない場所に勝手に保存される というのがなんか嫌で、あまり使ったことなかった
536 名前:デフォルトの名無しさん [2024/02/19(月) 06:48:23.74 ID:w7/dFwx/.net] ポクは、自動バックアップは、よく解らんけど、いつの間にか 自動バッチリアップされてるけど、何か、ヤダから、 標準モジュール内のVBAコードは、丸ごと手作業で シート内に、コピペしてる。文字化けもほぼ皆無 場合によっては、メモ帳に貼り付け、テキストで保管 ま、念の為だから、保管したテキストも数日でゴミ箱にポイだ BY 🤡
537 名前:527 [2024/02/19(月) 06:54:55.85 ID:w7/dFwx/.net] あっそうだ、コメント行で、'とかあうのが シート貼り付けで、消えたように見えるので、 ポクは、コメントは、'は一文字ではなく、 '''''ポクはやり方はバッチリだから文句いうな って感じで、'は沢山つなげております。
538 名前:デフォルトの名無しさん mailto:sage [2024/02/19(月) 08:48:43.14 ID:1uSUYqxO.net] >>527 コード触る前に枝番違いで保存するようにしてる 小変更なら下一桁、大きく変更したら上の桁をという感じ
539 名前:デフォルトの名無しさん mailto:sage [2024/02/19(月) 09:24:14.83 ID:CiX+tN/V.net] 男はゴミ箱の中に溜めたが多い。女はゴミ箱に溜めない、即消去する傾向があるw
540 名前:デフォルトの名無しさん mailto:sage [2024/02/19(月) 19:27:36.95 ID:2s0lLr+U.net] まだ根拠のないことを
541 名前:デフォルトの名無しさん mailto:sage [2024/02/19(月) 22:06:40.75 ID:CiX+tN/V.net] 恋愛を引き出しにゴミ箱に例えただけだよ。男っていつまで未練タラタラじゃん。
542 名前:デフォルトの名無しさん mailto:sage [2024/02/19(月) 22:25:41.40 ID:2s0lLr+U.net] 自己紹介乙
543 名前:デフォルトの名無しさん mailto:sage [2024/02/20(火) 07:38:20.43 ID:aIKR0wuU.net] 変数の宣言してからにしてください
544 名前:465 mailto:sage [2024/02/20(火) 09:18:26.52 ID:mq9qgv3z.net] >>527 Office365で同じような現象がありましたが、古い2010でマクロブックを開いたらちゃんと標準・クラスモジュールが見え、エクスポートできました あと、OSをシフトキーを押下したまま(完全な)シャットダウンするとよいという情報もありました 後者はうろ覚えなので、間違いだったらスマヌ
545 名前:デフォルトの名無しさん mailto:sage [2024/02/20(火) 09:19:50.79 ID:mq9qgv3z.net] >>538 の投稿者ですが 僕は465ではありません
546 名前:デフォルトの名無しさん [2024/02/20(火) 12:31:23.17 ID:mTqV5HiO.net] AIなら競馬とか株とかで儲かる奴わかるかな
547 名前:デフォルトの名無しさん mailto:sage [2024/02/20(火) 13:17:34.25 ID:gHDpofJ4.net] お世話になります。Microsoft365を使用しております。 納品書作成で別シートのマスタからvlookupで商品名に対応する単価を引っ張って来ています。ただ、全社共通単価の商品と、取引先ごとに単価が違う商品があります。 単価が違う商品のために取引先ごとにシートを分けて各社のマスタをつくり、それとは別に共通マスタ(全社共通単価商品リスト)を作って、一つのファイルで各社納品書を作成というのをしたいです。 例えば シート1:納品書原本 シート2:トヨタマスタ シート3:ホンダマスタ シート4:全社共通マスタ シート1のA1セルにプルダウンで、トヨタ、ホンダ、を選択する。 トヨタを選んだ場合は、トヨタマスタから単価を引っ張ってくる。 もしトヨタマスタに当該商品がない場合は、共通マスタから引っ張ってくる。 ということをやりたいのですが、できますか? ChatGPTに投げてみましたが、トヨタに当該商品名がない場合→ホンダ→全社共通検索するみたいな感じで、ちょっと芯をつけませんでした。(同じ商品名でも単価が違う) ちなみにトヨタとかにしてますが扱う商品は食品です。 例えばキャベツは全社共通単価だけど牛肉は会社によってグレードも違うので単価が異なるみたいな感じです。 また野菜は時価なので共通マスタの単価修正も頻繁で、会社ごとにファイルを作るのは大変なので一つのファイルでやりたいと思った次第です。 これよりもっと簡単な方法でも結構ですので、アドバイスなどご教示いただければ幸いです。よろしくお願いします。
548 名前:デフォルトの名無しさん mailto:sage [2024/02/20(火) 13:51:18.21 ID:dLB+ndOn.net] トヨタに当該商品名がない場合→→全社共通検索する でいいと思います
549 名前:デフォルトの名無しさん mailto:sage [2024/02/20(火) 14:41:09.38 ID:gHDpofJ4.net] >>542 早速ありがとうございます そのようにしたいのですが、現状のこのコードをどう改良したら良いのか教えていただけませんか? =IF($C11="","",VLOOKUP($C11,'共通マスタ'!$A$2:$F$49,3,FALSE)) A1にトヨタまたはホンダを選択→まずは当該マスタから検索、ヒットしなければ共通マスタから検索