- 1 名前:デフォルトの名無しさん [2025/01/24(金) 03:31:15.25 ID:l239yW+P.net]
- ExcelのVBAに関する質問スレ
コード書き込みや作成依頼もOK 次スレは>>980が立てること 無理なら細かく安価指定 関連スレ Excel VBA 質問スレ Part79(ワッチョイあり) https://mevius.5ch.net/test/read.cgi/tech/1674875532/ Excel VBA 質問スレ Part80(ワッチョイあり) https://mevius.5ch.net/test/read.cgi/tech/1700826110/ ※前スレ Excel VBA 質問スレ Part79 https://mevius.5ch.net/test/read.cgi/tech/1674874007/ Excel VBA 質問スレ Part80 https://mevius.5ch.net/test/read.cgi/tech/1685489018/ Excel VBA 質問スレ Part81 https://mevius.5ch.net/test/read.cgi/tech/1713416618/
- 802 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 13:35:20.91 ID:+XeHUCKJ.net]
- どのように属人化するか・どの様に防ぐかの話題から、
属人化対策として禁止するか否かの話に
- 803 名前:デフォルトの名無しさん [2025/05/23(金) 15:19:50.38 ID:eOaMEV2I.net]
- 最後に 知らんけど ってつけた方がいいんじゃんね
知らんけど
- 804 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 15:21:21.07 ID:mEX1XvmT.net]
- >>784
他の手段と比較してどうかはともかく、事実としてVBAが問題を起こすことが多いからあんたに仕事があるんだろ? だったら属人化万歳くらいで流しときゃいいのに、いちいち突っ掛かってたら余計なストレスを作るだけだぞ 心配しなくても、あんたが顧客としているような会社は、全体最適云々を語るコンサルやシステム屋は相手にしない まあSaaSについては結構小さいところもわりと積極的に営業するから敵になるかもね
- 805 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 15:53:12.83 ID:dHvUhuhP.net]
- 長くてわかりにくい
スパゲッティ文章はやめろ
- 806 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 16:24:52.89 ID:oLOrCYhj.net]
- うん、途中からどうも話が噛みあわないな、とかは思っていた
ひと頃「ExcelのVBAは属人化しやすいから禁止する企業が増えてる」とかのたまう輩が徘徊してて おま、それ、何もExcelに限らんだろ っつー意味で反抗してたし、そんなアホ論をこのスレで 平気で吹聴してる奴に向けて言葉のげんこつしてたんだけど どっか行っちゃったんか? 所詮、世間は、世の中は属人三昧だろ? それで右往左往世界が悪い方向に向かってる実例を まざまざと目の当たりにしてる真っ最中だろ? で、それが悪かどうかなんか、もう少し様子を 見極めなきゃいけないまである なんでわざわざこのスレをターゲットに、VBAは属人化!!!とか言い募らなきゃならん? どこの回し者だ?、と 細かいこと言えば、じゃあってんでこれでもかっつー関数並べ立てて複雑怪奇な数式を組んだ WorkSheetはどうなんだ? 属人化の極みだけどそれはいいのか? 見た目xlsxならおkなのか? と 至るスレで属人化!属人化!!属人化!!!と連呼してるならまだわかるが、なんでExcelスレ限定 で、こないだ別件で「Excel 売上管理」とかでネットをモゾモゾしてたら、そこら中の売上管理アプリの 宣伝サイトが、形ばかりのExcelのサンプル載せて「しかしExcelは属人化」っつー文言を決まり文句の ように添えてたんだ ははぁ〜ん、とね、ある意味腑に落ちたし別の意味でがっかりしてたんだ 言い募る連中が自分の言葉でその悪弊を語れなくて「ネット見ろ」とか返すしか能が無かった理由が判明 そんなサイトだけじゃ無いのは承知してても、結局自分の意見として主張してンじゃなくて、受け売り 余所で聞きかじったのをなぞってるだけのレベルなんだな、と しかし、少なくともこのスレに居続ける人間なら、ExcelのVBAで効率を図ることに意欲的であって欲しい 他のがいいよ、って奴はその宣伝だけして書き逃げしてて欲しい まだまだExcel もっともっとVBA であり続けることが、このスレの健全化に貢献するはずなんだから すぱげってぃwww 読み飛ばせばいいじゃんか 読んでくれなんて頼んで無いぞ?
- 807 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 16:44:22.04 ID:HIpPOdnz.net]
- スレタイ
- 808 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 16:53:05.49 ID:fshmIkkH.net]
- xlsmって唐突に未知のウイルスの疑いのあるファイル扱いになったりする事もあるから何も知らない人は扱うのが怖いかもね
- 809 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 17:18:49.63 ID:4lmOgu2G.net]
- VBA職人が揶揄されるのも分かるわ。
ところで、仮にVBA職人、Ruby信者、Haskell信者、Rust信者で比べられたら、やっぱりVBA職人が圧倒的に格下扱いされちゃうのかな。ちょっと悲しみ。
- 810 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 17:28:32.52 ID:U7YdU8g0.net]
- VBAがそれらと同列に比較されることはないから互いに眼中にないと思うよ
Excel VBAはピボットテーブルとか分析関数とかと同列の、Excelの上級スキルの一つに過ぎない 一般的なプログラミングとは別物 そのへんのエンジニアより、むしろBIツールがメインのデータアナリストなんかの方がVBA意識してるよ
- 811 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 17:34:04.21 ID:4lmOgu2G.net]
- なるほど、そんなものかねぇ。
- 812 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 17:39:18.56 ID:+XeHUCKJ.net]
- >>789
文意の分からん文章書いてて噛み合わないもクソもないだろ 伝える気ないなら書くな 読ませる気無いなら書くな 話を曲解して変な方向に話を誘導してるのはあんた自身だ
- 813 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 18:31:41.70 ID:5vSRBrjF.net]
- 言語にすぐ上だ下だ騒ぐ奴いるからな
- 814 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 18:59:01.81 ID:BlARSTzn.net]
- 言語じたいは下の下
反論する奴すらいない
- 815 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 19:12:24.88 ID:K4ioF38n.net]
- 構文として最低限どんなものがあって欲しいかっていうのは人によって違うからねぇ。いまは、JavascriptとかPython辺りが平均的なラインなのかな。まぁ、関数型言語等のユーザーから見ればJavaScriptとかPytnon辺りでも足りないものだらけということになるんだろうし、VBAでも慣れればそんなに不自由ではないよという人も大勢いるわけだしね。
- 816 名前:デフォルトの名無しさん [2025/05/23(金) 19:54:42.34 ID:ybuGJY2P.net]
- C言語育ちのワイ、VBA始めた頃「えっ、ポインタってどうやって使うの?」って戸惑った思い出
自分の仕事が楽になる
- 817 名前:p途で使いまくってるからまぁ属人化しまくりだけど、
自分が退職した後(2年後)は知らんと思っている [] - [ここ壊れてます]
- 818 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 20:17:02.36 ID:dHvUhuhP.net]
- この辺がつらい
・tryがない ・for eachがバリアントのみ ・continueがない
- 819 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 21:01:05.99 ID:61koEGUg.net]
- まぁ、なければないで何とかやっていけるもんだよ。
このスレではそう言っておくのが無難。
- 820 名前:デフォルトの名無しさん [2025/05/23(金) 21:05:52.61 ID:fxCKrz9G.net]
- >>799
C言語にはfor eachがない、なぜならもっと原始的、シンプルな言語だからってCopilotに聞いたのですが本当なのでしょうか?
- 821 名前:デフォルトの名無しさん mailto:sage [2025/05/23(金) 21:21:09.60 ID:eG6EJpyW.net]
- >>802
ポインタに++すれば次の要素になるからむしろCのほうが融通が効く
- 822 名前:デフォルトの名無しさん [2025/05/23(金) 22:01:59.52 ID:ai481srR.net]
- 4行以上のレスは読む必要無いってマジだな
- 823 名前:デフォルトの名無しさん [2025/05/23(金) 22:09:05.20 ID:4KSUIwLz.net]
- ぬるぽ
- 824 名前:デフォルトの名無しさん [2025/05/23(金) 23:17:20.35 ID:fxCKrz9G.net]
- >>793
データアナリストならパワークエリーしてほしいな
- 825 名前:デフォルトの名無しさん [2025/05/24(土) 06:17:34.64 ID:OSW0csek.net]
- 属人化し易い言語と言うことは融通の利く言語と言うことでもある。
例えば、CやC++ではポインタが使えたけどC#では「それは危険だ」ということで使えなくなってしまった。 代わりにデリゲートを使ってセーフティーに参照しなさい、ってことなんだろうけど、まぁお仕事用の開発だったらそれでもいいのかもしれないけど、 昔PS-VITAってゲーム機があって、これがエクスペリアってスマホとクロスプラットフォームで開発できるように開発言語をC#にしてしまった。 ポインタは確かに参照先間違えると吹っ飛んだりメモリリーク起こしたりと危険なものではあったけど、扱いが面倒ではないし融通の利く機能だった。 それを潰してしまったことがPSPシリーズがVITAで終わってしまった原因ではないかと今でも思ってる。
- 826 名前:デフォルトの名無しさん [2025/05/24(土) 06:41:52.12 ID:OSW0csek.net]
- >>798
JavaScriptをやったときには 前から.Net系の言語や、まぁVBAでもそうなんだけど、 何でクラスのインスタンスや文字列とかは変数に入れられるのにメソッドは入れられないんだろ? って思ってた時期があって、 JavaScriptに当たったとき、 あ、出来る言語もあるんだってなって、あれVBAに欲しいなぁとは思った。 後はスクリプト系の言語はスカラー変数で型の指定がないから型の指定に慣れてると逆にそれが面倒だったかな。 VBAで言えば全部Variantで扱ってるようなもんだし。厳密には違うらしいけど。
- 827 名前:デフォルトの名無しさん mailto:sage [2025/05/24(土) 10:35:16.26 ID:sJ/mZ3mU.net]
- 若いコにはやっぱPython辺りが人気とか?
- 828 名前:デフォルトの名無しさん mailto:sage [2025/05/24(土) 13:44:59.73 ID:3VNn3d5Y.net]
- スピル周りやLET,LAMBDAなどの関数が充実し
Excel=ビジュアルな関数型言語だと勝手に思っている
- 829 名前:デフォルトの名無しさん [2025/05/24(土) 14:39:09.90 ID:a4AdJqTs.net]
- ビジュアルな関数型言語はemacs-lispだろ
- 830 名前:デフォルトの名無しさん [2025/05/24(土) 15:44:49.02 ID:0gUvgwlc.net]
- 表検索するのにSQL使ってたけど、FILTER覚えたら単純な検索ならこれでいいかー、ってなった
- 831 名前:デフォルトの名無しさん [2025/05/24(土) 20:17:19.55 ID:c7V+L981.net]
- このスレはバカの話はなぜ長いのか考えるスレになりました
- 832 名前:デフォルトの名無しさん mailto:sage [2025/05/24(土) 20:41:36.84 ID:6QA0+Pxw.net]
- 頭の良い人は難しいことを簡単に説明出来る
馬鹿は簡単なことを長々と判り難くする
- 833 名前:デフォルトの名無しさん [2025/05/24(土) 20:44:24.68 ID:OSW0csek.net]
- >>813
正直すまんかった 久しぶりにVBAスレ来たからつい・・・ でもVBAはいい言語だと思うよ
- 834 名前:デフォルトの名無しさん mailto:sage [2025/05/24(土) 21:07:47.86 ID:cYe6QRvj.net]
- VBAは言語なのだろうか
VBは言語だけども
- 835 名前:デフォルトの名無しさん [2025/05/24(土) 21:42:51.33 ID:ZMjSY/PV.net]
- A1セルはこのフォルダのパスを記入する
A2セルはこのフォルダのパスを記入する 流石にこれは通じる、、、よね?
- 836 名前:デフォルトの名無しさん [2025/05/24(土) 21:44:12.53 ID:ZMjSY/PV.net]
- >>816
チューリング完全がプログラム言語の定義なのでしょう? だったらVBAはプログラミング言語なのでは
- 837 名前:デフォルトの名無しさん mailto:sage [2025/05/24(土) 22:37:10.39 ID:iK5rs3WU.net]
- A1 Write this folder pass.
- 838 名前:デフォルトの名無しさん [2025/05/25(日) 12:18:28.20 ID:IvH5YvLQ.net]
- dictionaryやFileSystemObjectのfunction関数を使っているけど、dictionaryに登録する処理や取得したファイル名やファイルパスに対する操作は事なる
こう言う場合、どうすれば個別の条件にも対応できるfunction関数が作れますか?
- 839 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 12:36:22.85 ID:ubpRgCst.net]
- 異なる操作をひとつの関数で行いたいという質問ですね!
まずはどういう操作を行っているのか教えてください!
- 840 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 12:45:27.58 ID:czPn1bap.net]
- dictionaryは死ぬ予定だから使うのやめなよ
- 841 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 12:53:50.40 ID:ubpRgCst.net]
- >>822
そうですね! Excelなのだからデータはワークシートに格納するのがスジですね!
- 842 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 13:20:14.05 ID:fZ8kzLje.net]
- AIみたいな解答ワラタ
- 843 名前:デフォルトの名無しさん [2025/05/25(日) 16:48:27.92 ID:zOE9ehCa.net]
- ホントにAIに聞いた。
個別の条件にも柔軟に対応できる function を作るには、いくつかのアプローチが考えられます。例えば、以下のような方法を試してみてはいかがでしょうか。 1. パラメータを活用する 2. Enum または定数を使う 3. コールバック関数を使う
- 844 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 17:36:59.25 ID:QBoxveBd.net]
- 何をしたいのかが謎
型によって処理を分岐させたいってことかね Function 関数(処理対象) 型名 = TypeName(処理対象) Select Case 型名 Case "Dictionary" Case "File" Case "Folder" End Select End Function
- 845 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 18:31:50.10 ID:czPn1bap.net]
- >>823
そういう話じゃなくVBS廃止の副作用で連想配列や正規表現が死ぬって話
- 846 名前:デフォルトの名無しさん [2025/05/25(日) 18:42:26.13 ID:rOBfPREU.net]
- >>827
VBS廃止の副作用で死ぬのは噂や推測じゃなくて公式の情報なの?
- 847 名前:デフォルトの名無しさん [2025/05/25(日) 19:07:30.81 ID:IvH5YvLQ.net]
- ファイルシステムオブジェクトでフォルダの中のファイル名一覧と、ファイルパスを取得したい時もあれば、
ファイル名に部分一致するファイルのパスを取得したい時もある
- 848 名前:デフォルトの名無しさん [2025/05/25(日) 19:13:49.79 ID:5C/Jye7Q.net]
- 従来の正規表現の代用って無いの
- 849 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 19:54:07.08 ID:czPn1bap.net]
- >>828
逆にあれだけ情報出ててなんで死なないと思うの? https://techcommunity.microsoft.com/blog/windows-itpro-blog/vbscript-deprecation-timelines-and-next-steps/4148301 >>830 vba-regex by sihlfallっていう、 RegExp代替のフルVBAで書かれた正規表現エンジンがある
- 850 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 19:58:13.45 ID:bo3VS07C.net]
- >>829
はい! if文で条件分岐すれば、簡単に実現できます!
- 851 名前:デフォルトの名無しさん [2025/05/25(日) 20:04:43.89 ID:IvH5YvLQ.net]
- 私はVBAの正規表現が死んだら、パワークエリーでJavaScriptの正規表現を使うわ
set オブジェクト = nothingって必ずした方が動作が確実になるのでしょうか? Wordのドキュメントやアプリ
- 852 名前:ケーションを処理する時にエラーが出たのでそう思いました。 []
- [ここ壊れてます]
- 853 名前:デフォルトの名無しさん mailto:sage [2025/05/25(日) 22:03:34.39 ID:QBoxveBd.net]
- 正規表現はREGEX関数が実装されたのでVBAでやる必要なし
- 854 名前:デフォルトの名無しさん [2025/05/25(日) 22:32:05.60 ID:d/seLvao.net]
- >>822
知ったか乙 良く調べて書き直せ
- 855 名前:デフォルトの名無しさん mailto:sage [2025/05/26(月) 02:34:52.38 ID:J879X3+V.net]
- >>835
Microsoft Scripting Runtimeに依存してるからVBSと共に死ぬ FSOなんかはScripting Runtimeには依存してないから引き続き使える 間違ってるなら指摘して 認識改めるから
- 856 名前:デフォルトの名無しさん mailto:sage [2025/05/26(月) 09:38:22.00 ID:G1Vrdcz4.net]
- >>820 が聞きたいのは
https://www.limecode.jp/entry/syntax/bind-set-filesystemobject この辺の処理の仕方なんでは? 最後まで精読すれば、どういう書き方をすれば より都合が良くなるか、それなり理解が深まるような
- 857 名前:デフォルトの名無しさん [2025/05/26(月) 09:53:10.39 ID:wHcYCN0P.net]
- >>833
>set オブジェクト = nothing それ書かないで過去に何度か問題起きてたような ファイルopenして、close書かなくても勝手に閉じてくれるとしても、書いたほうがいいようなもん たった1行各程度で未然にトラブル防げるなら書いとけと (かと言って、親オブジェクトから連なる小オブジェクトはいちいちnothingせずに、親オブジェクトだけ書いちゃうことも多いけどな。小さい処理だと特に)
- 858 名前:デフォルトの名無しさん [2025/05/26(月) 12:08:21.83 ID:chNfFSjB.net]
- >>836
間違えている どのDLLに何が入っているかだ
- 859 名前:デフォルトの名無しさん [2025/05/26(月) 13:55:33.90 ID:cvwCoF8H.net]
- >set オブジェクト = nothingって必ずした方が動作が確実になるのでしょうか?
した方が良いじゃなくてするべき
- 860 名前:デフォルトの名無しさん [2025/05/26(月) 17:21:30.90 ID:c1JRhLC0.net]
- コピペ荒らしこのスレだけ来ないの面白いな
- 861 名前:デフォルトの名無しさん [2025/05/26(月) 18:35:02.01 ID:FaOK97dk.net]
- >>837
すみません 今の私は例えばファイルシステムで言えば、 フォルダの中の全てのフォルダ名とフォルダパスを取得 フォルダの中の全てのファイル名とファイルパスを取得 フォルダの中に指定のファイル名と異なるファイルがあれば削除 と言う様に、 それぞれのサブプロシージャを作成する事しかできていません なので、一つのサブプロシージャに条件に応じて複数の処理が行えないかなと思いました 原作論で言えば、一つの処理しかできないサブプロシージャこそ正しいのかもしれませんが あと、それぞれのプロシージャでファイルシステムオブジェクトを宣言とセットをしてしまっています nothingは今までプロシージャを抜けた時点で解放されるから特にする必要がないと思っていましたが、Wordを操作する様になって、nothingをしないと処理が止まってしまうので意識する様になりました
- 862 名前:デフォルトの名無しさん mailto:sage [2025/05/26(月) 19:11:18.49 ID:mCaBFscc.net]
- Sub Yaritai(i as integer)
if (i and 1) <> 0 then Call Sub1() elseif (i and 2) <> 0 then Call Sub2() End Sub
- 863 名前:デフォルトの名無しさん [2025/05/26(月) 20:30:26.44 ID:sP5+kUYx.net]
- >>842
ご自分で言ってる通り、ひとつのモジュール、関数、メソッド等にはひとつの役割を与えて作るのがセオリーです。ちなみにそれを単一責任原則と言います。 ひとつのプロシージャ内で出来るかと言えば、再起処理やStaticな変数を上手く使えば恐らく出来ないことは無いでしょうが、そうするメリットをあまり感じません。 ひとつのプロシージャで処理するのではなく、ひとつのクラスとしてその辺の処理を行うことを検討しては如何でしょうか? そうすればメンバ変数として宣言したもののインスタンスをコンストラクタで生成することも出来ますし、デストラクタで解放することも出来ますよ
- 864 名前:デフォルトの名無しさん [2025/05/26(月) 20:36:57.49 ID:sP5+kUYx.net]
- ×再起処理
◯再帰処理 誤変換すまんこ
- 865 名前:デフォルトの名無しさん [2025/05/26(月) 21:18:23.47 ID:FaOK97dk.net]
- >>844
クラスモジュールを一通りやった事がありますが、いまいちクラスモジュールの使い方を知りません どうすればそれぞれの機能をクラスモジュールで効率的に実装できるでしょうか?
- 866 名前:デフォルトの名無しさん mailto:sage [2025/05/26(月) 22:59:03.14 ID:Eh03XDLb.net]
- セルから機種依存文字を直接拾ってくるのは難しいですか?
例えば☐(unicode:2610)が入ってるセルをクリックすると☑(unicode:2611)に書き換える、みたいなのを実装する場合、 if(Range("A1").text="☐")then だとRange("A1").textでセルの文字は取得できませんよね? (もちろん「="☐"」で直接比較することもできませんが) どうにかしてセルの機種依存文字を拾ってきてその種類を判定することは可能でしょうか?
- 867 名前:デフォルトの名無しさん mailto:sage [2025/05/26(月) 23:15:54.66 ID:MWZ/4kNq.net]
- >>847
Hex(WorksheetFunction.Unicode(Range("A1")))
- 868 名前:デフォルトの名無しさん mailto:sage [2025/05/27(火) 15:49:48.18 ID:j5Gfr/Ar.net]
- >>847
>Range("A1").textでセルの文字は取得できませんよね? 取得はできる。VBEで使えない文字だからソースに直接その文字を書けないだけ Dim CHECK_ON As String: CHECK_ON = ChrW(&H2610) Dim CHECK_OFF As String: CHECK_OFF = ChrW(&H2611) If Range("A1").Value = CHECK_ON Then Range("A1").Value = CHECK_OFF Else Range("A1").Value = CHECK_ON End If
- 869 名前:デフォルトの名無しさん mailto:sage [2025/05/27(火) 17:59:07.28 ID:2OPk25Mu.net]
- >>848
解決しました。 ありがとうございます。
- 870 名前:デフォルトの名無しさん [2025/05/27(火) 20:17:39.42 ID:3QS90eHP.net]
- Excelの話ではないからスレ違いなんですが、 Wordのドキュメントの2ページ目の行に文字列を挿入するにはどうしたらいいでしょうか?
2ページ目の〜行目にと言う様な指定はできないのでしょうか?
- 871 名前:デフォルトの名無しさん [2025/05/27(火) 20:38:35.17 ID:0hlUsnMF.net]
- >>851
スレチとわかっていて厚かましい 死ね
- 872 名前:デフォルトの名無しさん [2025/05/27(火) 20:52:46.35 ID:OuONf5SF.net]
- >>852
この馬鹿モンが! >>851 いい質問ですね ExcelのほうがメジャーでWordはマイナーなのだけど WordのVBAをはじめた人にとっては初期段階でやりたい操作なのではないでしょうか? 簡単ではないですが解決策はあります たしかinformationみたいな名のプロパティを使ったような気がする (もうWordVBAは数年使ってないから忘れた) ChatGPT使えば教えてくれるかも
- 873 名前:デフォルトの名無しさん mailto:sage [2025/05/27(火) 20:54:35.84 ID:DtCiAPP8.net]
- >>853
死ね
- 874 名前:デフォルトの名無しさん mailto:sage [2025/05/27(火) 22:13:59.20 ID:JUnNHiQe.net]
- >>851
ActiveWindow.ActivePane.Pages(2).Rectangles(1).Range = "文字列" & ActiveWindow.ActivePane.Pages(2).Rectangles(1).Range
- 875 名前:デフォルトの名無しさん [2025/05/28(水) 00:45:03.58 ID:7WzKj5D7.net]
- フォームを作るのに標準のコントロールやAPIでは動かないことがあったから、ついにPowershellで作り始めちゃった
- 876 名前:デフォルトの名無しさん mailto:sage [2025/05/28(水) 01:00:15.46 ID:+7HocyMO.net]
- PowerShellは
System.Collections.Genericが使えるからかなり楽だよなぁ VBAと違ってフォームデザイナが標準で付いてないのが難だが
- 877 名前:デフォルトの名無しさん [2025/05/28(水) 07:40:29.71 ID:LbsE8EcH.net]
- VSの方が楽なんでは
PS使ったことないけど
- 878 名前:デフォルトの名無しさん [2025/05/28(水) 08:42:06.86 ID:WNN+73zR.net]
- PowerShellはbatと違って、一手間や権限設定が必要と聞いたからやめた震え声
本当にそうなのですか?
- 879 名前:デフォルトの名無しさん [2025/05/28(水) 08:58:57.33 ID:DZlhdmsz.net]
- 震え声で言ってるの?
- 880 名前:デフォルトの名無しさん mailto:sage [2025/05/28(水) 09:02:42.36 ID:3/66YXCT.net]
- スレタイを音読してみよう
- 881 名前:デフォルトの名無しさん [2025/05/28(水) 09:56:27.88 ID:0RI44N1Y.net]
- エグザイル ビバ しつもんしる
- 882 名前:デフォルトの名無しさん [2025/05/28(水) 20:05:51.40 ID:WNN+73zR.net]
- VBAでファイルやフォルダのパスはいつも一覧表で利用しているのですが、当然属人化するリスクがあるので、もっと柔軟にパスを設定できる方法を探しています。
今考えているのは、ファイルやフォルダが見つからなかった時にダイアログを開いてフォルダやファイルを選択させ、選択したファイルやフォルダのパスをセルに記入する、と言う方法なのですが、もっと簡単で確実で柔軟な方法はないでしょうか?
- 883 名前:デフォルトの名無しさん mailto:sage [2025/05/28(水) 20:44:52.08 ID:Z5h4paoG.net]
- 自分は設定シートを用意して、そこに記述してあるものを参照してる
- 884 名前:デフォルトの名無しさん mailto:sage [2025/05/28(水) 20:50:09.42 ID:bd87TuSw.net]
- ログインユーザーのマイドキュメントをルートにして開く
具体的には「HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Personal」 のパス
- 885 名前:デフォルトの名無しさん [2025/05/28(水) 21:40:10.79 ID:WNN+73zR.net]
- >>864
その設定用シートに 例えばフォルダやファイルを複数選択した状況で右クリックのパスをコピーでシートに貼り付ける という事さえも出来ない、わからない人も想定しないといけない訳で、、、
- 886 名前:デフォルトの名無しさん [2025/05/28(水) 21:58:53.67 ID://Fv0twK.net]
- >>863
エクスプローラーからファイルをドラッグドロップ
- 887 名前:デフォルトの名無しさん [2025/05/28(水) 22:16:15.52 ID:WNN+73zR.net]
- >>867
知らなかったです これができるなら本当に希望が見えてきました
- 888 名前:デフォルトの名無しさん [2025/05/28(水) 22:18:57.59 ID:QfAx2JsO.net]
- 馬鹿ばっか
- 889 名前:デフォルトの名無しさん [2025/05/28(水) 23:46:46.18 ID://Fv0twK.net]
- >>868
https://excel.syogyoumujou.com/memorandum/d_and_d_1.html このやり方が簡単そう
- 890 名前:デフォルトの名無しさん [2025/05/29(木) 07:11:07.31 ID:cC95Jm/J.net]
- >>870
よくよく考えれば当たり前なんだけど、ドラッグ&ドロップで追加する機能もあるんだ これは便利だ
- 891 名前:デフォルトの名無しさん [2025/05/29(木) 17:25:49.51 ID:fp+yAGdo.net]
- FileSystemObject の TextStream が使えないなら ADODB の Stream を使えばいいじゃない
と思ったら挙動が違ってびっくり
- 892 名前:デフォルトの名無しさん [2025/06/01(日) 20:16:56.40 ID:wTah86rB.net]
- 初歩的な質問で申し訳ないですが、マクロ実行中にエラーなどでデバック画面、エディタ画面に移動せずに、エラーハンドリングなどを実行してプロシージャを終了するにはどうしたらいいですか?
- 893 名前:デフォルトの名無しさん mailto:sage [2025/06/01(日) 21:54:45.65 ID:fzXRF4Kq.net]
- >>873
On Error Resume Next
- 894 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 00:34:11.70 ID:14Td775l.net]
- [ツール] [オプション] [全般]
エラーでトラップ ●エラー処理対象外のエラーで中断 ということではなくて?
- 895 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 00:35:28.23 ID:14Td775l.net]
- ×エラーでトラップ
◯エラートラップ
- 896 名前:デフォルトの名無しさん [2025/06/02(月) 07:36:05.35 ID:hx4qvUMZ.net]
- >>614
on error goto ラベル名 vba エラーハンドリング で検索して例を見た方が早いよ
- 897 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 08:46:36.26 ID:IeMpK/LE.net]
- >>614
そんなひとつのモジュールに詰め込んだら管理しにくいでしょ。 モジュールは分ける。
- 898 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 09:24:06.39 ID:3Ov4fjqk.net]
- >>878
何を基準にかを書かかないと役立たずじゃない?
- 899 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 15:03:33.91 ID:DSKTrfoz.net]
- 馬鹿はそんなことも判らないのか
- 900 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 15:07:32.82 ID:OjGRkHiP.net]
- >>880
スレタイ読めない馬鹿w
- 901 名前:デフォルトの名無しさん [2025/06/02(月) 19:50:00.14 ID:K2UVQp3e.net]
- >>614
ひとつのモジュールにはひとつの役割を ひとつのプロシージャにもひとつの役割を 与えて書けばいいんじゃない? もちろん、モジュールとプロシージャでは 与える役割が全然変わってくるけど 例えばモジュールに車という役割を与えたら プロシージャには走る役割を与えたり 後はセンス
- 902 名前:デフォルトの名無しさん [2025/06/02(月) 20:06:38.96 ID:Xhmb9taU.net]
- ありがとうございます
やはり on error goto ラベル名 なのですね
|

|