Excel VBA 質問スレ Part80

■ このスレッドは過去ログ倉庫に格納されています
2023/05/31(水) 08:23:38.97ID:4RV1IxmB
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/
2024/03/01(金) 03:09:40.15ID:Np1th+eg
>>625
また長文wかよ発端も嘘じゃん
発端は質問者に対して あ ん た が アンチパターンを勧めたことを咎められたからだろ
質問者や他の回答者に責任転嫁してんなよ
見下されるのに慣れててもプライドだけは高いのなw
2024/03/01(金) 09:14:57.95ID:I4imwP7r
どのレスのことを言ってる? レス番なり安価なり打ってみ?
あと、ここじゃ他人の迷惑かも知らんから誘導してくれてもいいし
629デフォルトの名無しさん
垢版 |
2024/03/01(金) 20:19:39.07ID:siMz5kgA
>>625
長文だと自動的に文字が小さく表示されるのかな?
内容よりもそこが気になる。
2024/03/01(金) 20:55:30.94ID:YxTx11vx
先輩方、Pythonを勉強してVBAを見下す立場になれるよう頑張ります!
631デフォルトの名無しさん
垢版 |
2024/03/01(金) 21:02:28.66ID:siMz5kgA
PythonかVBAかなんて、ニッチな選択だな。
英語ができるようになったほうが道が開けると思う。
2024/03/01(金) 21:46:20.85ID:EUtv2TqY
英語なんかできて当たり前なんだわ
今はもう一つ、ヒンディー語か広東語ができないと話にならない
2024/03/02(土) 01:01:59.09ID:KTwKRybH
VBE のイミディエイトをクリアするマクロだそうです。
http://dailydoseofexcel.com/archives/2004/06/09/clear-the-immediate-window/

GetKeyboardState とSetKeyboardState でCTRLキーを押すことをやってるんですが、
CTRLキーを解除するときになぜApplication.OnTime でDoCleanUpをしなければいけないのかがわかりません。
たしかに
Call DoCleanUp
にするとイミディエイトが消されない。

Win11+Ofiice2016で動作するさせるためにAPIの宣言を64bitにする必要がある。
2024/03/02(土) 01:28:15.02ID:KTwKRybH
ClearImmediateWindowの実行結果
https://i.imgur.com/M4kNp2t.mp4
2024/03/04(月) 23:28:29.52ID:IavysLeK
存在しないシートがVBEのプロジェクトエクスプローラーに表示されるという症状が出た
シートのプロパティを見ると何故かThisWorkbookになってる
Excelではシートを表示できないので削除できない
新しいブックを作成して必要なシートとマクロをコピーした
2024/03/05(火) 16:50:41.31ID:dpZ+O5GV
モジュールのエクスポート/インポート機能を使わないで、複数ブック開いてコピペとかしてるとありがち
2024/03/08(金) 21:36:17.36ID:FpK7LIqd
動作が不安定なときは一旦再起動
2024/03/08(金) 21:37:31.20ID:FpK7LIqd
PCの方な
639デフォルトの名無しさん
垢版 |
2024/03/08(金) 22:48:13.30ID:kAti37wZ
>>638
自分じゃないのか?
2024/03/09(土) 16:13:53.02ID:T4wf6Qzw
再起動して直るものは、メモリ上にめっちゃ無駄なものがロードされてるのが理由
641デフォルトの名無しさん
垢版 |
2024/03/09(土) 21:26:30.52ID:HJGXBhOf
質問する人間はどうしてOSとExcelのバージョンを書かないのだろうか?
642デフォルトの名無しさん
垢版 |
2024/03/10(日) 06:40:05.58ID:R4vtmRl7
メモリ不足? 可能性は200%より少ない
それより、回避出来ない排他制御かも
ていうかさ、

A.xlsm には、
 Cells(5,"x") ="処理完了"
 というコードがあって、かつ、
 結構重たい処理
B.xlsm も、それなり重たい処理だが
 Cells(5,"x") ="処理完了"
 のような、コードなし。なし、なし。

さて、A.xlsmとB.xlsmを2つ開き、
A.xlsmのを実行すると、通常、モチロン、
A.xlsmのセルx5に"処理完了"と表示だ

しかしA.xlsmを実行中に
B.xlsmにフォーカス?するとさ、時々
B.xlsmのセルx5に"処理完了"と表示される
B.xlsm、B.xlsm、B、 B、 B.xlsmに表示

これはメモリ不足は根本的原因ではなく
🟥🟩
🟦🟨のWindowsの並列処理の排他制御の
モピロン、致命的欠陥❓❓❓
致命的、致命的、致命的だけど致命でなく
ポクは生きてます。ので安心してね〜

てか、何やかんやで、デッドロックてか、無限ループ❓
643デフォルトの名無しさん
垢版 |
2024/03/10(日) 06:49:14.64ID:R4vtmRl7
ま、メモリが不足すると、排他制御が怪しくなり
最悪、ファイル出力を伴う処理では、
最悪、ファイルが破損する致命的事象はよくありそう
でも、致命的であり致命でないからヒトには直ちに安心安全death

てか、スケッチ&なんとかで、
メチャデカい静止画を上書き保存する時、レマークが表示される
前に、スケッチ&なんとかを閉じると、その静止画が破損する確率が
30%位あるだよな。使用のパソコンのメーカーは
モチロン、🇯🇵の超有名ブランドだから、やはりOSの致命的欠陥なのかな

ま、このOSは、安全性を重視するシステムにはヤヴァイかも
違ってるかな❓
644デフォルトの名無しさん
垢版 |
2024/03/10(日) 08:23:30.43ID:z1qM+lAV
>>642
コードが悪いだけ。
Cells( と書くと、その時アクティブになっているワークシートに書き込む。
A.xlsmの指定したシートに確実に書き込みたいならcellsの前にThisworkbookとかWorksheet( とかつけて書き込む対象をはっきりさせる必要がある。
2024/03/10(日) 11:20:42.19ID:R69Uz5dp
そゆこと めっちゃ無駄なもの = メモリ不足 と認識したのかも知れない 書き方が悪かった
ヒト側から見たら誤動作に見えても、プログラム側は指令された動作しかしない
あの国で乱立してる新築無印廃墟マンションで例えるなら、「その部屋をノックしろ」とだけ
書かれてたら目の前のドアをノックしてしまう 〇地区の東側から何棟目の12Fの何番目の・・
とかまで書いていれば、ちゃんと目的のドアをノックする  まぁ、これも例えが悪いが
そもそもメモリ不足な状況に陥ればOS側から警告される
2024/03/10(日) 11:38:04.43ID:2KDJRuXY
>>641
常識がある人はそもそも質問せずに自力で検索する
その方がタイパがいいと知ってるから
647デフォルトの名無しさん
垢版 |
2024/03/10(日) 12:10:02.72ID:jIpxHUBx
自分が悪くても装置や他人のせいにするのが日本人の本性
648デフォルトの名無しさん
垢版 |
2024/03/10(日) 12:18:34.84ID:bPLoNXVi
ルール通りの文法で書いてエラーはでてない
前の人が作ったシステムをそのまま使ってるので自分は悪くないって
どっかの政治家みたいな
2024/03/10(日) 14:47:15.35ID:zGz8GbzL
会社の昼休みに自主的に作ったVBAの著作権って誰のものになるの? 会社の電気代で動く会社のPCで作ったVBAだから著作権は会社のものになる?
2024/03/10(日) 15:28:19.07ID:moqRUryc
>>644
>Cells( と書くと、その時アクティブになっているワークシートに書き込む。
どこにコード書いてるかで、そうとはかぎらんがな
2024/03/10(日) 15:32:52.61ID:cxwwvu4i
せるすよりらんげのほうが人間味があって好き
2024/03/10(日) 16:30:17.12ID:fyHBRGJj
お?おう…
2024/03/10(日) 19:00:11.97ID:iAilUW7R
>>649
https://www.bunka.go.jp/seisaku/chosakuken/seidokaisetsu/toroku_seido/index.html
とりあえず読んでから判断しなされ
2024/03/10(日) 20:11:39.95ID:NKncS/j9
>>649
ごく一部に、社員側に権利を認めてくれるとこもあるど、それは今の日本では例外扱い
会社の規則に明記されてなかったら会社の物
2024/03/10(日) 22:50:52.55ID:iAilUW7R
設計段階からすべて一人で作って管理保守、動作保証までしっかりできれば個人のツールで使用を認めれくれるかもしれんが
それでもシェアウェアにして上司に認めれもらって使用料出してもらう程度が関の山
下手に社外に情報出したら機密情報の漏洩とかで訴えられるかもしれんし、職場でもめるのは良くないだろう
2024/03/11(月) 01:31:02.29ID:zXeP6RhC
VBAに著作権なんかあるんだ?
2024/03/11(月) 01:53:13.61ID:yKug7UCI
>>656
内容による
ソースコードに著作権があるかどうかの裁判はいくつもあったけど、プログラムの処理内容によって判決が変わってる
2024/03/11(月) 20:11:39.48ID:IXO6pk8a
VBAプログラマなぜ職人扱いなのですか?
Javaとかだとプログラマって言われるのに
2024/03/11(月) 20:16:42.37ID:B/ZZkEZZ
他に応用が利きにくいから
2024/03/11(月) 20:41:12.27ID:hTUIcMh1
Excel使ってるだけだからな
661デフォルトの名無しさん
垢版 |
2024/03/11(月) 20:51:18.09ID:K1coeKg7
>>658
Excel VBAは同じことをするのにいくつもやり方があるから。

古いのでどう書いてもスマートにならないところも悪い意味で職人と呼ばれる。
2024/03/11(月) 23:44:51.00ID:zXeP6RhC
求人表に書いてほしいわ、プログラマではなくて、VBA職人募集って。
2024/03/12(火) 04:48:59.67ID:g5EgwlfU
COBOL職人とかもVBAの仲間なんだね
2024/03/12(火) 06:01:44.01ID:dHDxCjZ4
プログラマは複数の言語を知ってるのが普通
職人は特化型、VBAとかCOBOLしかできない人のことなので、たぶん悪口
2024/03/12(火) 12:04:31.25ID:7hqMNgHE
LISP特化だとLISPエキスパートって呼ばれるのに、、、
VBA 土方とかVBA ニコヨンとか酷い
2024/03/12(火) 22:21:31.90ID:KEqpibK3
Excelしかできないのも軽蔑の対象って事?
667デフォルトの名無しさん
垢版 |
2024/03/12(火) 22:40:49.63ID:n3W+Fun6
>>666
構造化プログラミングをしていないことが多くて評価が低い
2024/03/12(火) 23:12:17.21ID:gLjRPC0d
身一つで客先のPCだけ借りられればササっと安易なシステムぐらい
作り上げてしまえる 人呼んで流しのVBA屋 銀さん
669デフォルトの名無しさん
垢版 |
2024/03/13(水) 00:56:17.99ID:TCqO/DNK
>>668
それをやられて困っている大企業ばかり
本人だけがわかっている状態はやばい
2024/03/13(水) 10:01:41.22ID:ZQwlGwgU
大企業でそれは無いだろ 大企業なら困ってもどうとでも成るだろ
そんな程度で困ってる大企業なんか、もっと他の困った事態でどんどん淘汰されちまう
それがたとえ中小・零細だろうとも、どんどん募集掛けて血の入れ替えすりゃいいだけ
業務に支障が出る作業なのに「困ったこまった」連呼してても何にも変わらない
どころか業務停滞で業績ダウンまっしぐら
2024/03/13(水) 21:06:02.59ID:yRg6g8nL
VBAってどうやってGitHubを使えばいいの?
2024/03/14(木) 09:03:44.00ID:tz/cO71v
ズバリ
https://note.com/shift_tech/n/nf116fe6b993c
なるほどわからん
ここ、githubご本家にあるVBAのトピックには855のリポジトリが
https://github.com/topics/vba-excel
なるほどもっとわからん
わからんことに挫ける人にはむつかしく、わからんことにワクワクする人だけが使えと
2024/03/14(木) 11:11:00.14ID:zw2hJyBA
>>672
コードをエクスポートしてそれをGitで管理してるみたいだね
VBEと直接の連携はできない様子
2024/03/14(木) 11:21:18.12ID:S63hIx8C
.xlsmならzip解凍して上げときゃいいんじゃね?
しらんけど
2024/03/14(木) 11:59:52.65ID:6mqOXHFg
GitHub本体よりGitHub Gistの方が、
簡単なVBAソースコードの共有には、敷居が低くていいかも?
GitHub本体のアカウント登録は必要だけど、imugurと同じようなものかと。
2024/03/14(木) 12:01:06.30ID:bC1RkMTx
やっぱこうVBAも人工知能てきに
フレームワークでGITHUBでDOCKERしないといけないね
2024/03/14(木) 15:30:23.52ID:tz/cO71v
VBA必須案件て、そんな、寄ってたかってnetで共有してまで制作するものかね?
一社が独占して受注して、世界中に散らばったデジタルノマド・リモートワーカーに作成してもらう?
そんな用途でしか使い道が無いような
もっとちっぽけな案件で社内やせいぜい特定の一社に委託して制作してもらうのが関の山では?
バックアップや履歴管理とかの用途なら、もっと他の手段だってたーくさんあるだろうに
背伸びーして絡ませてみても、先方の都合であんなことやこんなことが頻発して支障のが多いような
下請け孫請けひ孫請けってぇヒエラルキーの下っ端に居ると使わざるを得ないのか?
2024/03/14(木) 17:42:43.70ID:W9dmLvCI
個人の業務を効率化出来る
配布も容易なので部署内の複数人で共有も便利
この域に留まるもんでしょ
そんな大がかりなことやってられっか
2024/03/14(木) 17:45:43.41ID:4hz/lWKp
夢見たいんだよ
小汚いビジネススニーカーにチノパンとかじゃなくてさあ

スーツびしっと決めてホワイトボードの前でプロジェクト会議
VBA言語で、SQLServerと連携し
フレームワークとしては、、、とか知的デスカッションしてさあ
今回のアジェンダは、シナジー効果でえ、アグリーとか言って
そんでGitHubをリポジトリにしてえ、

カッコイー
680デフォルトの名無しさん
垢版 |
2024/03/14(木) 21:44:13.36ID:WzunCsAD
>>670
情報分析関連とか管理会社などが属人化していることが多い
681デフォルトの名無しさん
垢版 |
2024/03/14(木) 21:46:00.90ID:WzunCsAD
さっきカフェで「マイクロソフトさんびゃくろくじゅうご」と言っていたやつがいた。
2024/03/14(木) 21:52:22.46ID:PtmagAPD
さんろくご って教えてやれよ
683デフォルトの名無しさん
垢版 |
2024/03/14(木) 23:18:45.05ID:6hLPa3BJ
助けてください!
リストボックスに30個の項目があって「最大3個まで」複数選択できるようにしたいです。

3個に制限をかける方法が全く分からず…
ご教示いただけないでしょうか?
684デフォルトの名無しさん
垢版 |
2024/03/14(木) 23:38:45.64ID:o53reG2p
一つだけ選択できるリストボックを3つ用意すればいいんじゃね
2024/03/15(金) 01:45:02.85ID:pxiw0MaS
>>669
大半がそんなんばっかだよ
2024/03/15(金) 08:40:52.42ID:odjXu12H
みんな大好き OFFICE TANAKA のサイトへ行って、リストボックス 複数選択とか探せ
で、その情報分析とか管理会社とかは、大企業のカテゴリーに入るのかね? 因みにどこよ?
https://reashu.com/data-bunseki-kaisha/#15
ここの、データ分析企業 15選の中のどれとどれなんよ?Excelつことるんかね?
おふぃす・すりー・しっくすてぃー・ふぁいぶ
2024/03/15(金) 19:12:40.97ID:pxiw0MaS
別に大好きでは無いが。通は真髄さんのサイトを参考にするらしい。
2024/03/16(土) 12:50:51.83ID:jF3tjcga
リストボックスで複数選択できる場合
最後に選択された項目を知るには、直前の状態を保存しておいて差分を比較するしかない?
もっと良い方法ある?
2024/03/16(土) 14:32:06.75ID:re25UDF8
良い方法かどうかは本人次第だが、リストボックスのそばに「直前値」とかのセルを設けておいて
選択した値を放り込んでおく 毎回上書きに成るはずだから「直前」のものが残る
セルじゃ不味ければテキストボックスでも
690デフォルトの名無しさん
垢版 |
2024/03/16(土) 16:11:12.01ID:GhCD3khr
いや、セルとリンクするでしょう
691デフォルトの名無しさん
垢版 |
2024/03/16(土) 23:38:33.06ID:5O1O3AvE
そんなわかりにくいコントロールを使うのは意味がわからない
2024/03/17(日) 06:42:18.68ID:qCDjFoYW
画面に糞長リストボックスが存在するのはどちらかと言えばダメなUIに該当する
コンボボックス3つ並べた方がメンテもし易いしスマートだよ
693デフォルトの名無しさん
垢版 |
2024/03/17(日) 11:54:33.01ID:AqGy3e9x
>>688
別のリストボックスまたはテキストボックスを用意して、リストボックスをクリックされたらそちらにどんどん転記して、そこの表示項目を3個に制限するとか。
694デフォルトの名無しさん
垢版 |
2024/03/18(月) 07:14:42.27ID:c8KzIzaw
リストボックスを質問した者です。

みなさん、ありがとう!
いろんな発想があって勉強になります。
2024/03/18(月) 22:23:22.87ID:9nqFTr6B
自力で調べて試行錯誤すれば30分もあれば解決できただろうに
2024/03/19(火) 08:35:01.46ID:9sghRKeO
普段利用してる既存のアプリやWebのサービス画面を参考にしなよ
その中でリストボックスから3つだけ選択させるなんて馬鹿な事してるやつなんてないだろう
2024/03/19(火) 09:30:46.19ID:OENDBoNW
>>696
結構あるよ
なぜそのサービスを選んだのか(3つまで)
みたいな
2024/03/19(火) 10:31:54.14ID:FWSQOt5I
複数選択はリストボックスじゃなくてチェックボックス使うだろ普通は
作る手間よりは使いやすさで選ぶべき
できるのとやっていいのは違う
2024/03/19(火) 10:51:09.79ID:ndo8yE4S
>>698
例挙げただけで俺に言われても
2024/03/19(火) 13:31:57.18ID:bxvgA8mG
おソースがずっと固定ならそれでもいけるけど、変動するんじゃね?
占有面積の関係でもズラッと30項目広げておけない、リストボックスでやるかあ、もあるだろうし
まあ、使い勝手悪ければ利用者からクレーム来て直さざるを得ないだろうけど
701デフォルトの名無しさん
垢版 |
2024/03/19(火) 16:49:09.60ID:1hm2hbr1
OutlookやWordなどと連携したマクロを書きたいのですが
体系的に書かれた本やサイトはないですか?

本「Excel VBAによるOffice連携プログラミング」は古すぎ?
2024/03/19(火) 16:58:06.07ID:e59eRVD7
https://learn.microsoft.com/ja-jp/office/vba/api/overview/
2024/03/20(水) 04:18:34.13ID:Oi3lQc+Z
リンクだけ置いて去るとか、ここもヤフー知恵袋みたいになったな
704デフォルトの名無しさん
垢版 |
2024/03/20(水) 07:05:43.00ID:MqzgFJ/0
マクロの実行中に、読み込み中とか更新中みたいな途中経過表示を出したいんだけど、
DoEventsを3行くらい書かないと表示が更新されないんですよ。
2003の頃は全く書かなくても更新されたのに。
何でそんなことになった?
2024/03/20(水) 09:44:01.68ID:FmnJmBUF
「何で?」と問われても、主導権はアチラ側にあるんだし
機能改善にしろ新機能追加にしろ便利機能の排除にしろ、中の人がそうしたなら従うしか無い
GoogleにしろMSにしろ「ほらよ」と黙々と更新し続けるだけ 理由なんか言わない
使うか使わないかはコチラ側の判断
散々世界中から非難を受けて、元に戻した機能とかあるのか? 記憶に無いが
精々が、アプデでヘマこいて取りやめて一旦戻したとかぐらい
706デフォルトの名無しさん
垢版 |
2024/03/20(水) 10:08:21.92ID:gI+QZKf6
>>704
3行かけばいい
2024/03/20(水) 10:26:08.09ID:OLlIwjsr
>散々世界中から非難を受けて、元に戻した機能とかあるのか?

Windowsのスタートボタン
2024/03/20(水) 10:31:25.48ID:HLVBDeU8
>>704
おま環、もしくはおまコードでしょ
2024/03/20(水) 10:43:53.11ID:TS8DQhlx
>>704
パソコンの性能が低いか、同時にたくさんのアプリを開くとそうなりやすい
710デフォルトの名無しさん
垢版 |
2024/03/20(水) 12:07:03.73ID:4Mj0yaxh
おまんコードだ
2024/03/20(水) 12:15:00.37ID:PLWQjtwu
それだ!
2024/03/20(水) 12:38:26.22ID:fI7Vegl3
コンソール入力ってVBAでできないのですか?
Inputboxじゃなくコマンドプロンプト画面でキーボード入力したい
2024/03/20(水) 13:01:02.23ID:k/ghtD7O
2024/03/20(水) 13:11:08.66ID:Lu1dlSwc
割とどうでもいいからよく調べてはいないけど、たしかにさいきん、以前と同じように書いていてもApplication.StatusBarの反映がされないことがある気がするな
2024/03/20(水) 19:23:59.49ID:b620Mh8j
>>712
コマンドプロンプトからExcel起動できるよ
2024/03/20(水) 19:52:54.82ID:eVx8KhvF
>>712
何がやりたいのかわからん
フォームにテキストボックス置いて背景真っ黒にしとけ
2024/03/20(水) 20:47:23.37ID:o6loRrC7
全社員が参加する部門方針発表会の部代表でプレゼンやらされたけどVBAによる自動化って堂々と答えたわ
いちゃもんつけてくる部署がいたらそこの部署の方針をボロカス追求しようとと思ったけど突っ込みはなかった
718デフォルトの名無しさん
垢版 |
2024/03/20(水) 20:51:24.89ID:rQARYLMS
突っ込みはなかったんじゃなくて、相手にされなかったのかなw

俺なら、「ノーコードで自動化して皆さんの無駄な作業を無くします!( ー`дー´)キリッ」 だな。
2024/03/20(水) 21:14:39.63ID:o6loRrC7
外資メーカーだけど中身なんてこんなもんだよ
AI導入を検討とか社外の総合システムの検証を進めるとかどこの部署も毎年ふんわりワードばっかり
俺の部署はVBAでシンプルに毎年効果出してる
昭和すぎるけどそんなもんよ
720デフォルトの名無しさん
垢版 |
2024/03/20(水) 21:36:39.98ID:nR+Nyrib
ノーコードはバージョンアップで動かなくなり、メンテできる要員もいなくなり、導入当初にもて囃されるだけでただのお荷物となる
2024/03/20(水) 21:43:53.81ID:yhD2QQ94
新技術に飛びつくのは素人
ちゃんと仕事ができる人は、普及率と安定性で選んでトラブルを回避しつつ開発コストを下げる
2024/03/21(木) 04:54:19.48ID:yryIx6y6
PowerAutomateは糞
ぜんぜんノーコードじゃない
outputとかtriggerBodyとか必須だし
変数ないとまともに組めない

VBAの分かりやすささいこう
723デフォルトの名無しさん
垢版 |
2024/03/21(木) 20:24:54.71ID:XNznmG1v
>>722
それはあなたの能力の限界じゃなくての話かな?
724デフォルトの名無しさん
垢版 |
2024/03/21(木) 21:11:31.56ID:sP7RJlQ1
あれはHTTP要求がプレミアムなのがなぁ
それならVBA使うわ
2024/03/21(木) 22:01:31.05ID:WgKjQvoi
ノーコードとかRPAとか騙してる感じがすごい……
2024/03/22(金) 08:27:00.19ID:COuqOC3S
>>725
ノーコードも理解できる人ならコード書けるしChat GPTとかで補助させたりもできるんだよな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況