Excel VBA 質問スレ Part81

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2024/04/18(木) 14:03:38.03ID:cMr18rZu
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/
Excel VBA 質問スレ Part80
https://mevius.5ch.net/test/read.cgi/tech/1685489018/
2024/07/02(火) 20:57:23.79ID:+BxLXJhB
さすがにソートのコア部分を自力で一から書いたりせんだろ
普通はコピペで済ませるもんだ
だから具体的なアルゴリズムも、把握も理解もしてない
2024/07/02(火) 21:29:58.30ID:93BwtCzT
コピペでそんなに遅くなるかなあ
バブルソートや選択ソートみたいな非実用的なソートはアルゴリズムのお勉強くらいでしか出てこないから、そうそうVBAerが目にするとは思えん
先輩や昔出入りしてたベンダーなんかが残していった秘伝のタレ()みたいな得体の知れないのをコピペしたか、
そもそもソートアルゴリズムとは関係なく無茶苦茶非効率なことしてるのが濃厚かな
2024/07/02(火) 21:41:48.62ID:QTdccgY1
どう見ても初心者だし、入門サイトの最初のコードをコピペしたとしか思えない
想定してたデータの数も少ないって言ってるし、遅いコードでも実用上の問題はなかったと
2024/07/02(火) 21:49:24.54ID:Z6VfyY8K
セルの選択、コピー、選択、ペーストしてたんじゃね?
2024/07/10(水) 09:35:09.14ID:sfTc3ndE
最近VBAの一部変更が必要になって試しにChatGPTに作らせてみた
無料版はちょっとアホでエラー出たりするし
実態は >>160 なんだろうけど
それでも自分で一から考えたりコピペするより早く仕事が終わる
2024/07/10(水) 17:12:59.06ID:0yq3LaYe
実態は検索コピペとは全然違うから、変なメンタルブロックを外してやりたいことをそのまま伝えればいい
ちゃんと仕様を伝えてあげればマジで全部自動で書いてくれる
2024/07/10(水) 21:51:22.24ID:OdajDBeV
VSTOって結構使われてますか?
VBAとどのように使い分けますか?
2024/07/11(木) 09:39:08.98ID:DAl2fWFT
VBAは事務員用、VSTOはSIer用と思っておけばいい
VSTOを使うなら本格的なプログラミングスキルを有することが前提であり、
逆にVSTOを使用するためにプログラミングを勉強するようなことは本末転倒だ
だからVBAと比べても仕方ない
2024/07/11(木) 13:07:13.06ID:uqek3YIp
しかし事務員でVBAは普及していない
VBAを効率良く使っているのは一部の事務員のみ
2024/07/11(木) 13:26:36.13ID:sFeOwvqg
普及してたら「前任者が抜けてしまい保守できませぇん!」案件なんてなくなるはずだもんな
2024/07/11(木) 16:13:20.72ID:h1opyaqO
よその会社でどれだけVBAを使っていようが、使われていなかろうが、関係ないだろ
自分の職場で使っているのか、自分が使うのかどうかが大事なのではないだろうか
2024/07/11(木) 16:18:24.01ID:uqek3YIp
まあ、VBAは自分の作業にひっそりと使うために書くのがベストだよね。過去スレにもそうやってる人が何人かいたし。
間違っても他人のために書いてはならぬと
2024/07/11(木) 19:31:24.05ID:3zUw5A+b
正常ルーチンくらいしか書いてないから渡さない
2024/07/12(金) 11:44:42.62ID:QqZXcs2V
本体よりエラー処理のが何十倍も作るのに手間がかかる
最低限動くレベルの物しか作らないから、自分以外が使うのは不可能
2024/07/12(金) 19:40:31.11ID:PZzrISVh
結局作成者しか分からない書き方になってしまうね
2024/07/13(土) 02:58:36.45ID:q/C/4svJ
図形の書式→文字の効果の "四角"(図形幅に合わせて文字が変形するやつ)と"変形なし"をワンボタン切り替えられるようにしたいのだけど
効果四角→変形なし をマクロ記録した後コードを分けて実行すると、四角変形は上手くいくけど変形なしのコードを実行しても実際の結果と違って変形が解除されない…
2024/07/13(土) 10:51:53.06ID:cXbjogOx
コードを書かんとわからんぞ
2024/07/13(土) 12:11:51.29ID:eBJkpv1T
>>228
俺も同様の経験したことある
図形の効果がオンはできるがオフがキレイにできない
2024/07/13(土) 13:37:29.34ID:q/C/4svJ
>>229
Sub tes() '文字を図形幅に合わせて変形
Selection.ShapeRange.TextEffect.PresetShape = msoTextEffectShapePlainText
Selection.ShapeRange.TextFrame2.WordArtformat = msoTextEffect1
End Sub

Sub tes2() '変形を解除
Selection.ShapeRange.TextFrame2.WordArtformat = msoTextEffect1
End Sub

マクロの記録だと変形解除のコードが文字のエフェクト?初期化しか記録されない
PresetShapeをどうにかするんだと思うけど調べてもそれらしいのが出てこないの
>>230
もしかして手動解除しかできない…?
2024/07/13(土) 16:19:37.49ID:cXbjogOx
運用シーンの想像が付かないが、連動させれば動作するけど切り離すとダメってのは
元のサイズとか位置とか仕様とかを記憶させてないんだから戻しようが無くてVBAも無言に成るしかないのでは
addShape 辺りで最初に細かな設定したシェイプを作って、変形して、リセット とかなら動作するはず
233デフォルトの名無しさん
垢版 |
2024/07/13(土) 21:47:50.32ID:IXVKi1AD
わからんけど、変えるのが駄目なら消して作り直せば?
2024/07/14(日) 21:07:35.67ID:LO5YDZM2
TextFrame2.WordWrap = True(自動改行オン)の状態でシェイプ内テキストが自動改行されているかを
Len(TextFrame2.TextRange.Text)とLen(TextFrame2.TextRange.Lines(1))の比較で
判定出来たので、改行されていたら
TextFrame2.WordWrap = False(自動改行オフ)にしてTextEffect.PresetShape = 1(四角変形)に設定。
改行無しかつTextEffect.PresetShape = 1だったらいったんシェイプ消してaddShapeで作り直し
という感じで文字数が少ない時は通常表示、多い時は幅圧縮表示するコードいちおう書けました。ありがとうございます。
235デフォルトの名無しさん
垢版 |
2024/07/15(月) 11:36:02.72ID:8PBTMz0X
>>234
そやね
何か技があるかと見てたけど変形なしにするのは作り直ししかなさそうに思う
2024/07/20(土) 15:22:20.01ID:vG2riI25
個人用マクロブックをクラウドや別PCでも共有して使う方法ってありますか?
237デフォルトの名無しさん
垢版 |
2024/07/20(土) 17:59:42.08ID:pd3T6vIK
>>236
「共有」とはブックの共有のことをいっているのか?
238デフォルトの名無しさん
垢版 |
2024/07/20(土) 18:00:37.42ID:pd3T6vIK
>>236
Excelファイルのコピーがわからないということか?
2024/07/20(土) 18:07:57.97ID:1LSrUOUE
マクロを適当なブックにコピーしてクラウドなりに上げれば?
2024/07/20(土) 18:40:25.85ID:vG2riI25
>>237-239

個人用マクロブックってのはこれです
https://allabout.co.jp/gm/gc/297809/

これまでは自分で作ったFunctionとかを使い回すときにはブック毎にコピペしてたんですけど、こんなもんがあるということを知りまして
かといってこれはローカルでしか機能しそうになかったので、クラウド運用のときとかに使う方法あるのかな?と思いまして
無理ならそこまで便利なものでもないかな
241デフォルトの名無しさん
垢版 |
2024/07/20(土) 18:49:25.40ID:pd3T6vIK
>>240
ネタかよw

Excel 2003の記事を読んでいるが、Windows XPを本当に使っているのか?

まずはそこからだ。
242デフォルトの名無しさん
垢版 |
2024/07/20(土) 18:49:55.50ID:pd3T6vIK
クラウド運用って何?
2024/07/20(土) 19:13:41.69ID:6PYMQqn5
コードだけ控えとけばいいのでは
244デフォルトの名無しさん
垢版 |
2024/07/20(土) 19:35:28.68ID:pd3T6vIK
>>240
誰も教えてくれなかったんだろうけど、VBAのコードの使い回しなら、エクスポート・インポート機能を使うんだよ。
245茶々
垢版 |
2024/07/20(土) 20:12:14.78ID:8zrAcMd6
ド素人ばかりで草
246デフォルトの名無しさん
垢版 |
2024/07/20(土) 20:46:51.23ID:pd3T6vIK
>>245
個人用マクロブックはセキュリティ上の問題で使われなくなった。

ネタだとは思うが、この仕組みはかなり危うい。
実際にこうやって仕込むと自分自身でもコントロールができなくなる。
247茶々
垢版 |
2024/07/20(土) 22:06:00.13ID:iFgkPgQM
>>246
ド素人で草
どこの会社だよそれ
それともバカの自己判断か?w
2024/07/21(日) 00:07:04.12ID:fYsJOoNz
>>236
>>240

個人用マクロブックなんて機能あったんだなぁ
個人で使うには便利だろうけど
動かしようがないし共有用途では無理だろうね

俺もあんま詳しくないんだけど
作ったVBAエクセルをアドインファイル(xlam)にして
共有フォルダなりクラウドなりに置いといて各PCから参照してもらうのはどう?

アドイン化されたプロシージャは「マクロ」の一覧から非表示になっちゃうから
リボンにマクロ実行のボタンを追加してもらう必要があるけど
そのへんのやり方も下の記事に書いてあったから見てみて

自作したVBAをアドインにして使う方法 #Excel - Qiita
https://qiita.com/comugi/items/21dfc8baf1666e239536
2024/07/21(日) 12:56:39.68ID:VGCsTqoL
>>248
どうもありがとう
とりあえずあまり知られてない機能なのはわかりました
特定のいくつかのコードはアドイン化して各PCで使っているんだけど、これまで作ってきた色々なFunctionとか全部やると大変なことになるので
今は一つのモジュールにまとめて新規ファイルには最初に突っ込んだりしてるんだけど、たまにアップデートとかしたときには全部入替となるとまた大変で

そこでこんな機能知って便利かな?と思ったんだけど、最近は大抵のファイルはクラウドにおいてるんで、出先では使えないかなと
クラウド上のファイルの場合、PERSONAL.XLSBの参照先はどこになるのかな?とか知ってる人いないかな?と思って質問しました
どこにあるファイルでも基本そのローカルの場所を参照してくれるならPERSONAL.XLSBを配布すればよさそうだけど…一度また自分で調べてみます
2024/07/21(日) 14:32:55.86ID:Qlqjn6xB
>>249
ほんのちょっとググればローカル固定でPERSONAL.xlsbが作られるのは分かるけどね

単一のブックにすべてのマクロを作成して保存する - Microsoft サポート
https://support.microsoft.com/ja-jp/office/aa439b90-f836-4381-97f0-6e4c3f5ee566

マクロの共有
Personal.xlsb ファイルを他のユーザーと共有する場合は、他のコンピューターの XLSTART フォルダーにコピーできます。 Windows 10 の場合、 Windows 7、および Windows Vistaでは、このブックは C:\Users\user name\AppData\Local\Microsoft\Excel\XLStart フォルダーに保存されます。
2024/07/21(日) 14:40:38.34ID:Qlqjn6xB
>>249
というか
アドインに詰めて各PCで使ってもらうにしろ
Personal.xlsbを配布するにしろ
結局のところあんまり労力は変わらないような…?
2024/07/21(日) 14:41:42.67ID:Qlqjn6xB
うちの会社で勝手に入れられる業務用アドインだと有効化した時点で自動でリボンへメニューが追加されるんだよな
あれどういう仕組みなんだろ見れたら見てみるか…
253デフォルトの名無しさん
垢版 |
2024/07/21(日) 15:10:31.60ID:zm5uApN3
>>252
手は一つだけではないかもだが、起動時にリボン登録を走らせる
254デフォルトの名無しさん
垢版 |
2024/07/21(日) 16:52:25.09ID:bEwBbSRS
>>253
commandbars
やな
2024/07/22(月) 22:58:14.94ID:of/dmjKk
常時通信するソフトを個人用PCに強引に入れさせられる

セキュリティで10分でロックかかるかは触らないと通信エラーになる

部長と情シスにvbaで定期的にカーソル動かすかマウスムーバーをAmazonで買うしかなくなると相談する

セキュリティ解除はしないけどそのどちらかでやってくれと回答される

これついては聞かなかったことにするとまで言われる

何という責任逃れ軍団
256デフォルトの名無しさん
垢版 |
2024/07/22(月) 23:21:56.75ID:W5cKTeXz
>>255
完全に代替できるまともな案を提案すればいいだろ
どうせ何も出せない無能のくせに
2024/07/22(月) 23:24:31.08ID:+7Ic8Cyk
ロックでスリープしなけりゃいいんじゃね?
2024/07/22(月) 23:24:36.67ID:rCu2IFtP
余計な2行目のせいで「そういうアンタはマトモな案を出せる有能なのかよ🤬🤬🤬🤬🤬🤬🤬🤬🤬🤬」ってしょーもないおサルのレスバ合戦に発展するんでしょ
ぼく知ってるよ
259デフォルトの名無しさん
垢版 |
2024/07/23(火) 00:09:58.84ID:ky93KE1q
そんな煽りに乗ってくれればいいね
バカは不自由すればいいって一蹴されて終わりだろww
260デフォルトの名無しさん
垢版 |
2024/07/23(火) 05:55:25.90ID:t79JZUp1
いやいやそこじゃなくて、
何で会社のではなく個人用PCなのかだろう
どんな状況だよ
2024/07/23(火) 07:45:36.51ID:yA3s1fWI
こんな便所の落書きでしかマウント取れないお猿の大将って……()
2024/07/23(火) 07:46:47.64ID:yA3s1fWI
>>260
社用の個人PCなのか
社外のプライベートPCのことなのか
原文が適当すぎるから何も言えねぇ
2024/07/23(火) 08:17:50.27ID:BuJCezvl
こういう面倒臭い案件大好き もうちょっと詳細書いてみ?
上役や情シスからお墨付きもらったんだろ? やりたい放題じゃんか 責任逃れまでできる
それとも日中ボーっとしてることが多いからてんで、最低限マウスいぢくってる振りぐらいはしろ
っつーペナルティなんか?
セキュリティで10分操作が無ければロック掛かる通信監理システムって何だろうな
普通そういうシステムは、稼働したら一日中ほったらかしにしとくのが普通だろうに
264デフォルトの名無しさん
垢版 |
2024/07/23(火) 17:38:37.23ID:TPPfHQM2
>>249
そもそも自分の環境の説明がまったくないんだが?
265デフォルトの名無しさん
垢版 |
2024/07/23(火) 17:41:00.00ID:TPPfHQM2
>>263
いまはPC操作をしていなくても仕事をしていると判断することが多い。
2024/07/23(火) 19:59:44.87ID:35eDOqtl
VBAで定期カーソル移動で解決したわ
モノタロウでマウスジグラーも頼んだけど使わなくて済んだ
ネットワーク障害があったときは俺の範疇じゃない
流石俺だわ
2024/07/23(火) 20:09:46.02ID:cXSn49vY
>>266
俺なら鏡の上にマウス置く
268デフォルトの名無しさん
垢版 |
2024/07/23(火) 22:31:26.96ID:HkbI738T
いまさwebからExcelに情報とるソフト作ってるんだけど
「Microsoft Internet Controls」のライブラリ使ってるんよ
でもIEっていずれ使えなくなるんよな?やっぱchromeとか違うブラウザ方法でやったほうがいいん?
269デフォルトの名無しさん
垢版 |
2024/07/23(火) 23:21:21.21ID:LnBdIObW
>>268
そやな
もうそれは卒業していい
270デフォルトの名無しさん
垢版 |
2024/07/24(水) 00:53:54.71ID:Yd5lPCFP
スクレイピングするなら何が一番ええの?
Selenium Basicでええのか?
2024/07/24(水) 01:01:55.12ID:Aql4xph6
>>270
まずはVBAを使わないこと
2024/07/24(水) 01:08:43.85ID:l8TdcfaH
ユーザー数が多いのでいくなら、Power Query
PQでできないボタン操作絡みとかだったらPythonかしら?
273デフォルトの名無しさん
垢版 |
2024/07/24(水) 01:39:29.85ID:Yd5lPCFP
まじですかー
Pythonを使えるようになるのは道のりながそう
Excelだけで完結したいのにめんどうすぎる
274デフォルトの名無しさん
垢版 |
2024/07/24(水) 01:40:21.77ID:mluzaMP6
WEBだけでなくもっと広く自動化したいならRPA
275デフォルトの名無しさん
垢版 |
2024/07/24(水) 02:37:37.68ID:Yd5lPCFP
なんかTinySeleniumVBAってのが簡単そうだからそっちでやってみるわ
2024/07/24(水) 19:28:44.16ID:23AdqYHQ
>>268
コード見してみ
277デフォルトの名無しさん
垢版 |
2024/07/25(木) 01:39:41.05ID:SZPx3Myy
>>276
独学で恥ずかしいからヤダ><

いまここ見てTinySeleniumVBAっての入れてedgeを開くところまできた!
https://qiita.com/uezo/items/66e20b064ffd5f239b9a
278デフォルトの名無しさん
垢版 |
2024/07/25(木) 01:58:42.32ID:SZPx3Myy
WebDriverのmsedgedriver.exeで立ちあがったウィンドウが消えない
立ち上がったedgeは
Driver.CloseBrowser
で消えるのに!!どうすればええんや
279デフォルトの名無しさん
垢版 |
2024/07/25(木) 02:04:13.82ID:SZPx3Myy
>>277のLink見てこれで何とかedgeが立ちあがったんだけどさ
webドライバ?(msedgedriver.exe)で開いたウィンドウが開いたままになるのが気に食わないから閉じたいんだけど
なんて付け足せばええ?天才いたら教えてくれええ

Public Sub main()
' Start WebDriver (Edge)
Dim Driver As New WebDriver
Driver.Edge "C:\Users\〜〜〜\msedgedriver.exe"

' ブラウザを立ち上げる
Driver.OpenBrowser

' 指定したURLを開く
Driver.Navigate "URL"

' 立ち上げたブラウザを閉じる
Driver.CloseBrowser

End Sub
280デフォルトの名無しさん
垢版 |
2024/07/25(木) 12:50:18.09ID:7O0EkaPX
事故解決はまだかw
281デフォルトの名無しさん
垢版 |
2024/07/25(木) 13:34:22.38ID:SZPx3Myy
事故解決したわ
クローズじゃなくてシャットダウン使ったら全て閉じたわ
282デフォルトの名無しさん
垢版 |
2024/07/25(木) 14:33:04.71ID:7O0EkaPX
>>281
F2のオブジェクトブラウザも活用してな
オブジェクト名とプロパティ、メソッド眺めると何を使うか、何ができるかおおよそわかる
もちろんサンプルソース色々見るのも必要だけど
283デフォルトの名無しさん
垢版 |
2024/07/25(木) 17:58:46.43ID:d36Rq1nw
マウスのクリックとかキーボードの入力までチェックしている会社があるが、そういうイベントを自動的に発生させるものもあるから意味ないよなあ
2024/07/26(金) 08:07:31.00ID:h10hR1tY
少なくとも、何かあった(問題発生)時の原因切り分けには役立つ 経緯を辿れるのは重要
285デフォルトの名無しさん
垢版 |
2024/07/26(金) 12:39:47.80ID:ZcP8A8QQ
なんか無理やりVBAでスクレイピンするよりPythonでも学ぼうかな
なんか最近のExcelってPythonを使えるんでしょ
286デフォルトの名無しさん
垢版 |
2024/07/26(金) 12:39:48.16ID:ZcP8A8QQ
なんか無理やりVBAでスクレイピンするよりPythonでも学ぼうかな
なんか最近のExcelってPythonを使えるんでしょ
2024/07/26(金) 17:30:58.83ID:pCo9FROv
使えるといっても一部の機能だけなはず
2024/07/26(金) 20:18:35.01ID:j0JS6yAA
なんなら何でエクセルでやるの
289デフォルトの名無しさん
垢版 |
2024/07/26(金) 20:28:12.57ID:JylNHC7t
>>288
彼らにそれを言っても無駄
2024/07/27(土) 05:50:07.37ID:RNvy9Kyk
Excelは万能だと思い込んでいるだけでしょうに
2024/07/27(土) 07:41:33.03ID:xUKwOIPS
私はExcel がとても好きなんです
何でもExcelに寄せて解決しようと考えます
2024/07/27(土) 08:08:40.83ID:YclQyCPB
好きこそものの上手って奴だな 好きなのはいいこと
他人の評価に惑わされて新しいものに飛び付いたり、無理して上の方を目指したりしても
あんまし上達は見込めないこともあるし、好きだからこその見極めとかもできるように成るし
2024/07/27(土) 08:21:10.66ID:/Rm6QbSr
Excelは統合開発環境だろ?(白目)
294デフォルトの名無しさん
垢版 |
2024/07/27(土) 10:09:36.11ID:vTCaaucv
職場のルールだから上司の許可とればいいだけやん
無断で勝手なことするのが悪い
2024/07/27(土) 14:10:58.02ID:MpFjT9ff
>>288
ほんそれ
2024/07/27(土) 16:04:17.42ID:f+5IapJ8
そこにエクセルがあるから
297デフォルトの名無しさん
垢版 |
2024/07/27(土) 17:19:55.05ID:0d/nChKn
>>296
ほんそれ
298デフォルトの名無しさん
垢版 |
2024/07/27(土) 17:39:22.95ID:dZSJkFHS
>>295>>297
x ほんそれ
o ほんとそれ
2024/07/27(土) 18:16:30.12ID:YclQyCPB
○ ボンゴレ
2024/07/27(土) 18:26:25.05ID:RNvy9Kyk
別にテメェの金で買ったソフトをどう調理しようが勝手だろが
301デフォルトの名無しさん
垢版 |
2024/07/27(土) 23:25:12.94ID:ALN241hL
>>298
XL
2024/07/28(日) 01:52:13.70ID:AI4heTLU
エクセルはインストール全面禁止みたいな環境でも使えるからな
好むというかそれしか選択肢がない
2024/07/28(日) 02:00:14.06ID:hbyVmHWp
Windowsに標準で入ってるPowerShellもかなりのことができるんだけどね
Officeすら入ってない業務アプリ専用端末なんかでも使えるし
304デフォルトの名無しさん
垢版 |
2024/07/28(日) 06:01:12.49ID:tp6EkYfE
そう思ってたが、実はC井も使えると分かって愕然
2024/07/28(日) 10:25:58.68ID:PDbL5QOd
入力支援ないとだめぽ
306デフォルトの名無しさん
垢版 |
2024/07/28(日) 10:44:37.43ID:Sh9zjpk8
2024/07/28(日) 16:37:22.13ID:/XajKr+9
うんけ
2024/07/28(日) 18:49:51.38ID:srb26qrN
♯#井丼升
309デフォルトの名無しさん
垢版 |
2024/07/30(火) 17:16:16.88ID:PmWSmSbC
>>302
解釈が難しいな。
2024/07/30(火) 17:36:17.77ID:Gd5OjP8y
>>304
メモ帳コーディングは地獄の一丁目
おまけに.netも無しじゃ最近の若いモンにはきつかろう
2024/07/30(火) 19:39:57.90ID:WSvvKjsh
VBAのコード入力による学習は
エクセルがないと無理なんですか?

エクセルは高いから躊躇してます
2024/07/30(火) 19:52:25.13ID:dHP4AZe0
Microsoft365でも契約しな
OneDrive1TBがついて得やで
2024/07/30(火) 20:22:26.75ID:RvCjVRz7
性能が高いのは良いこと
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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