Excel VBA 質問スレ Part71

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 0f5f-nIK+)
垢版 |
2021/05/25(火) 12:48:01.06ID:mepUVc/i0
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付けるナリ

ExcelのVBAに関する質問スレナリ
コード書き込みや作成依頼もOKナリ

※前スレ
Excel VBA 質問スレ Part70
https://mevius.5ch.net/test/read.cgi/tech/1616072923/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2021/06/08(火) 09:24:20.65ID:rnKdyaoGM
>>197
> 自動構文チェックONにしているんだ。
まあこれは人によるかな
あんたも書いてるようにエラーになった時にいちいちダイアログが表示されて鬱陶しいとは俺も思う
2021/06/08(火) 09:56:53.56ID:zTVPbGTxa
変な場所って、プロシージャの真ん中あたりに宣言がポッと出てくるやつか?
いちいち上に戻って書き足すのがクソダルい気持ちは分かる
2021/06/08(火) 10:01:13.33ID:3w2dwJfs0
>>201
見たことないなぁ
どんな操作をするとそうなるの?
そもそも最初に設定しておけば必ずモジュール作ったときに一番上に出てくると思うけど
2021/06/08(火) 10:10:38.85ID:zTVPbGTxa
違う違う、そうじゃなくて、初心者がコード書く時にエラー吐かれる度にその場で直した結果として変なところで宣言してるやつってこと
2021/06/08(火) 10:32:12.38ID:3w2dwJfs0
>>203
Option Explicitとは関係ない話?
だったら本題と内容がズレるな。

>違う違う、そうじゃなくて、初心者がコード書く時にエラー吐かれる度にその場で直した結果として変なところで宣言してるやつってこと

これは初心者というか.Net系やJavaとかやってる人に書かせてもそう書くときがある
関数内で定義したVBAのDimとかのスコープが関数単位で効くものでなくて
If とか For とかのブロック単位で効くものと勘違いしているらしい。
2021/06/08(火) 10:36:39.71ID:zPjYlIziM
>>203
使う直前に宣言するって言うのは別に変な流儀じゃないけどな
むしろ先頭で宣言しろと言うのは老害の可能性もあるし
2021/06/08(火) 10:47:13.49ID:3w2dwJfs0
>>205
それは可読性の問題
あくまで俺だったらだけど同一スコープの先頭に書くな。後で変数定義して既に使われてる変数書いてエラーになって「あ」ってなるの嫌だし
一々コードから何の型で宣言しているのか探しにいくのも面倒くさい。
207デフォルトの名無しさん (アウアウウー Sa11-Wnv+)
垢版 |
2021/06/08(火) 10:51:37.03ID:zTVPbGTxa
>>204
いやいやズレてないよ、>>195がそういう話をしてるんじゃないかって話だったでしょ
ありがとう勉強になる…そうか俺老害側か…
2021/06/08(火) 11:03:04.11ID:3w2dwJfs0
>>207
よく嫁
>俺も宣言は他言語同様やるがOptionは気にしないな
>下手するとそれがあるせいで変な場所で宣言してる例をよく見る

Optionがあるせいで変な場所に宣言してる例をよく見るって書いてあるだろ?
そっちの話はOptionの話と関係ある?

後、宣言する場所に関しては老害とかないから安心していいぞ。何故ならもっと新しい言語のVB.NetやC#でも効くスコープの先頭に書くのが一般的だから。
209デフォルトの名無しさん (アウアウウー Sa11-Wnv+)
垢版 |
2021/06/08(火) 11:06:06.39ID:zTVPbGTxa
>>208 >>203
option付けたら変数宣言しないとエラー出すじゃないですか
2021/06/08(火) 11:07:57.69ID:3w2dwJfs0
>>209
Optionつけようがつけまいが
変数宣言するのは基本だと思うけど?
してないの?
2021/06/08(火) 11:09:49.36ID:GIt8+gr30
>>201
まさにそれ
2021/06/08(火) 11:10:37.61ID:bCI8JHzDM
>>206
別にお前さんに強要するつもりはないから自分の好きな様に書いてくれ
ただIDEの使い方位は覚えておいた方がいいんじゃないかな
> 一々コードから何の型で宣言しているのか探しにいくのも面倒くさい。
213デフォルトの名無しさん (アウアウウー Sa11-Wnv+)
垢版 |
2021/06/08(火) 11:15:14.30ID:zTVPbGTxa
>>210
俺とお前と>>195がしてても、それが基本でも、>>195が良く見るというコードを書く人たちが基本が身についているとは限らないじゃない
だから>>203でわざわざ初心者って言及したんですってば
2021/06/08(火) 11:16:08.53ID:3w2dwJfs0
>>212
Visual Studio辺りであればカーソル合わせると
定義した型が表示されるから分かるが
VBAの場合は一々「型の定義」でそこまで
飛ばないといけないし、何度か最寄りの型まで
調べると元の位置に戻ってくるのも
面倒だと思ってるんだけど認識違う?
違うんならそのIDEの使い方とやらを
提示して頂けると有り難いんだけどな
2021/06/08(火) 11:20:57.88ID:Bz/vS+dRM
変数の宣言って頭でまとめて宣言するより使う場所で宣言するのが今の主流だった気がするけどウチの会社だけなんかな
2021/06/08(火) 11:24:56.38ID:3w2dwJfs0
>>213
よく分からないな
初心者だから変数定義をしていないといいつつ
変数定義しているところがポッと出てくるという。
変数定義してたりしてなかったりというのであれば
もうそういう次元の話ではなくなってくる。
2021/06/08(火) 11:25:51.75ID:RLQzdArC0
>>194
だから「設定」と書いてあるだろアホ
2021/06/08(火) 11:32:15.16ID:3w2dwJfs0
>>215
状況がよく分からないけど
「使う場所で宣言する」というのは
スコープ毎に纏めていないと言うことだろうか

少なくとも俺が今までやった言語では
そんな流行りは見たことないなぁ
というか見辛いもの
2021/06/08(火) 11:47:18.41ID:eotEY1L4M
>>217
おじいちゃん、もうそのレベルの低い話は終わってるからw
2021/06/08(火) 12:12:36.32ID:zTVPbGTxa
>>211
ごめん

>>216
してないとは言ってないよ。option付けたら必ずさせられるじゃん。してたりしてなかったりにはなり得ない
初心者だから変数定義を最初に必ずするクセがついていないんじゃないかって話です

vba不慣れな人が宣言してない変数を使おうとして、実行時にoptionどおりエラーを言い渡され、慌ててエラー箇所の直前に変数宣言をぶち込む。その結果コードの真ん中に変数宣言がポッと出てくるやつになるんじゃないかってこと
2021/06/08(火) 12:44:31.31ID:3w2dwJfs0
>>220
言いたいことはやっと伝わった

では話を戻そう。そのコードを見てどう思った?
変数宣言強制設定して変数宣言書き込まないとエラーが出るようにするのが悪いと思った?
そんな奴がポッとそんなところに変数宣言を書き込んだ奴が悪いと思った?

前者というのであればここで話はもう終わり。
恐らくこれ以上話してもお互い得られるものは何もないと思う。

後者と言うのであれば、変数宣言強制した際に少なくとも変数が宣言されていないことは発覚する。これだけで恩恵があることは理解出来るかな?
その辺にポッと書いてしまったことはそれ自体が問題であり、その人に促せばいいんじゃないかと思うけど?
2021/06/08(火) 12:53:13.82ID:RLQzdArC0
>>219
自分の間違いが顕わになって、反論できないバカ
223デフォルトの名無しさん (ラクッペペ MMde-+uhU)
垢版 |
2021/06/08(火) 12:59:24.76ID:iJBocUpIM
くだらないタイプミスで時間を無駄にしたことはありませんか?
2021/06/08(火) 13:04:42.37ID:5PCuzcGlM
設定のことを含めた話ということすら読み取れてなかった7vXXが一番レベル低かったな
2021/06/08(火) 13:09:06.95ID:3w2dwJfs0
>>223
ない・・・と言いたいところだけどどうやっても0にはならんわなw

いつも思うのがOption ExplicitがあるんだからOption Strictも用意しといてくれればいいのにと。
変換に際して暗黙の変換をさせずにどれも明示的な変換を漏らさずさせられるようになれば
テストする際も安心して走らせられるのにって思う。
もっとも、人によっては面倒くさいと思う人が出るんだろうなぁ・・・
226デフォルトの名無しさん (ラクッペペ MMde-+uhU)
垢版 |
2021/06/08(火) 13:09:33.83ID:iJBocUpIM
>>218
C#でvar使うなら型の確定する現地じゃないとだめじゃね?
227デフォルトの名無しさん (アウアウウー Sa11-Wnv+)
垢版 |
2021/06/08(火) 13:14:50.72ID:zTVPbGTxa
>>221
確認だけど、俺はそのコード見てないし、見てない以上何とも思ってないぞ。俺は>195氏じゃない
>>201>>203は>195の言うコードを予想したものだということを踏まえて、それでも話を続ける?
2021/06/08(火) 13:17:48.89ID:3w2dwJfs0
>>226
そもそも型定義出来る言語であまりvarは使わない。まぁ厳密な書き方しない人は使うんだろうけど。
それにそれもスコープが効いてる頭でやる。
むしろC#のvarはVBAのVariantと違う。
別の内部型を使うことによって違う扱いをするようなことは出来ない。
最初に設定された値により使用する型が確定されるため、一度設定したらその型として定義される。
例外があるとすれば無名型とかレイトバインディングにより型が確定するもの。
2021/06/08(火) 13:21:07.44ID:3w2dwJfs0
>>227
では「見た」と言うのを「予測した」というのに置き換えて考えればいい。
そう言ったコードをどう判断するか、と言うことにかわりはない。
230デフォルトの名無しさん (ラクッペペ MMde-+uhU)
垢版 |
2021/06/08(火) 13:22:00.36ID:iJBocUpIM
>>228
だからC#では途中で宣言するvarが流行ってますよと
2021/06/08(火) 13:23:01.01ID:gtN4dmk3H
VBAの場合、変数は先頭で宣言するのが望ましいとされるけど強制ではない
そして、スコープ内ならどこに書いても効力は同じ

だから使用直前に書くコーディングルールでも動作に支障はない
別人が保守する可能性がある時に、ルールをどう伝えるかが問題になるだけ
コードの先頭にコメントで書いてもいい

参考、「通常、Dim ステートメントをプロシージャの最初に配置します。」
https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/dim-statement
2021/06/08(火) 13:26:59.27ID:gtN4dmk3H
いちいち先頭に戻って確認するのが面倒と言ってる人がいるけど、ウィンドウが分割できることを知らないのか
あるいはよっぽど狭いモニターでやってるのか
そもそも設計がきちんとできてれば、型も自然と決まってくるんだから確認する必要なんかないだろう
どっちにしろ自己責任で片付く問題でしかない
2021/06/08(火) 13:32:59.72ID:3w2dwJfs0
>>230
流行ってない。
C#やVB.Netの場合はそもそも変数の定義と一緒に値を設定出来るからスコープの頭で定義してvarの場合一緒に型を決める頭を設定する。
そしてスコープも関数単位ではなくIfやCase、For文等の細かいブロックに分かれるからそれが最小単位だ。
もしC#で他の誰かが組んだコードが確認出来るならしてみればいい。
2021/06/08(火) 13:35:48.75ID:XYNVs0qfM
>>214
そんなに型知りたいときある?
あとそれ先頭で宣言しても似たようなもんじゃね?
2021/06/08(火) 13:36:47.28ID:XYNVs0qfM
>>222
終わった話に粘着する爺乙w
236デフォルトの名無しさん (アウアウウー Sa11-Wnv+)
垢版 |
2021/06/08(火) 13:38:33.25ID:zTVPbGTxa
>>229
おーけー、じゃあ戻るというか新しい会話だね。

別にどっちも悪くないんじゃない? 少なくともoption付けて悪いってことはないでしょ
可読性の問題については頭にまとめて書くのが当然だとは思ってたし、途中にあったら変だと感じるけど、悪いかは分からん。今日は勉強させて貰った
2021/06/08(火) 13:40:15.13ID:3w2dwJfs0
>>232
ウィンドウ分割なんて一つしか出来ない。
ソースを確認するのは有効かも知れないが、そんなんで一々散り散りになった変数の型確認などしていたら大変な手間だ。まだ定義の確認で飛ばした方がマシ

設計どうのと言っているが、そんなコードや型までこと細かく書くことはまずない。
それは設計書ではなくコードそのものをただ日本語の資料におとしたというだけ。コードを見ればいいのだから無駄な作業だ。
2021/06/08(火) 13:48:16.57ID:3w2dwJfs0
>>234
何か沢山の人とやり取りしてると話がごっちゃになって・・・すまんな。
俺は使うスコープの先頭に書く派だけど、そっちは何の先頭と言ってるのだろうか。
話はそれによりけりかな。
2021/06/08(火) 13:55:51.97ID:3w2dwJfs0
>>231
最初に言った
これは可読性の問題だと。
動作に支障がないからと言って関数単位のスコープであればそこだけ確認すれば良いものを
わざわざ大風呂敷広げてそのモジュール単位にする理由が分からない。
2021/06/08(火) 14:04:14.95ID:3w2dwJfs0
>>236
とりあえずそこまででも理解して頂ければこちらとしても嬉しいし有り難い。
2021/06/08(火) 14:06:51.56ID:xXU8pzBkM
>>238
>>201からの流れだからSub/Functionの先頭でしょ
2021/06/08(火) 14:10:03.51ID:3w2dwJfs0
>>241
なるほど、ありがとう。
それなら基本俺も最初からそう言ってるしそれでいいと思う。
モジュール単位で使う必要のあるものはモジュールの頭で書けばいいしね。
243デフォルトの名無しさん (アウアウウー Sa11-Wnv+)
垢版 |
2021/06/08(火) 14:14:48.37ID:zTVPbGTxa
>>240
なんかほんと、ごめん。色々ありがとう
2021/06/08(火) 14:16:57.43ID:3w2dwJfs0
>>243
いえいえ、楽しかったよ
2021/06/08(火) 14:36:31.75ID:ECc03QiG0
ちゃんと教科書通りにやれ!
と怒鳴られたらどうする?
2021/06/08(火) 14:52:20.28ID:3w2dwJfs0
後、varで思い出したけど、これは余談になるんだけど、以前ExcelでPythonが使えるようになるかも知れないって話があって、結局のところ塩漬けになってしまったから残念ではあるけれど
つい五月の終わり辺りにExcel webが解放されたね。
使用言語はJavascript、Webのものだから今後HTML、CSS、クライアントやWebサーバー、IISや場合によってはJqueryやDBサーバーの知識が必要になる可能性がある。
いや、お客さんやエンドユーザーさんが「Webで確認したいなぁ」とか言い出しそうな人がいたら要注意だ。
まだどのような影響があるかは分からないけど、場合によってはおじいちゃんでその辺の理解がないと淘汰される可能性があるかも、とだけ言っておこう。

https://www.google.co.jp/amp/s/forest.watch.impress.co.jp/docs/news/1328/019/amp.index.html
2021/06/08(火) 16:03:42.43ID:aRPmnT2Sd
>>140

wsとqをどういう風に設定しているのか確認しました?
2021/06/08(火) 16:44:43.77ID:ZMLG7Zjy0
google apps scriptみたいなもんか
2021/06/08(火) 16:59:48.28ID:3w2dwJfs0
>>248
まさにそんな感じだろうとは思ってる。
ただ、IEには対応していないと書いてあるので
Edgeでは動くだろうけどchromeだとどうか・・・
すまん、ウチに入れてるOfficeは365だけど企業用ではないから確認出来んのよ。
2021/06/08(火) 17:49:08.47ID:3w2dwJfs0
まぁVBAは今までの資産があるし、今こんな話をするのは早すぎかも知れないけど、この機能を使おうとした場合、大きなお金持ちの会社になると
「じゃーボタン押したらDBの内容表示させようかー」とか軽くお客さんが言い出す可能性もある。
SQLはそのまま使えるけど、ビジネスロジックの部分はどうしようか、とか
「じゃー他のシステムと統合しようかー」とかになったら、上手くそのシステム作成の話に乗れればいいけど、そうでなければお払い箱になる可能性もある。
WebのビジネスロジックにVBAは使えないから他の言語も勉強しなければならない。

これは他のWebの言語やってるところも他人事じゃなくて「じゃー画面はEDGEでEXCELで表示してねー、ダウンロードはいやよー、編集して反映させたいからー」
なんて言われた日にゃUIをこれにしなくてはいけない。

今すぐと言うわけではないし、そうならないことも考えられるけど、ひょっとするとこれからEXCELというものは今までのものと
そういう方向性のものを含めてEXCELと呼ばれることになるかも知れないということ。

まぁ今は聞き流して貰って大丈夫だよ。
ただ、そう言う話があるということだけ心の片隅に置いといて貰えれば。
251デフォルトの名無しさん (ラクッペペ MMde-+uhU)
垢版 |
2021/06/08(火) 18:03:14.64ID:NOm8RE2hM
5分でかけるスクリプトに仕様書やらテストやら乗っけて
おいくら万円で売りつけるサービス業者のピンチですか?
2021/06/08(火) 18:07:44.94ID:3w2dwJfs0
>>251
ピンチになるかどうかはまだ分からないけどそんな可能性もあると言うこと
それにそう時世が動いたとしてピンチになるかはその人次第。
2021/06/08(火) 18:14:42.27ID:Yg8CMFGOM
VBAやってる人は、不安なら他の本格的なプログラミング言語に手を出す前に今時のWebベースのノーコード開発を習得したほうがいいと思うよ
VBAできる程度の頭があるなら難しくはないだろうし、ヘタにスクラッチで作るより遥かにまともなものができる
2021/06/08(火) 18:20:22.16ID:3w2dwJfs0
恐らくこれに対応しろと言われて一番困るのはMicrosoftのOS使ってないところ。
lMicrosoftであれば.Net freamWorkでそのようなライブラリをすぐ揃えてくれるだろうけど
そうでなければオープンソースのものは誰かが作ってくれるのを待つか自分でライブラリを作るしかない。

そしてMicrosoftはそれが内部でどう作られているのか教えてくれる気は更々ない。誰かの解析待ち。
255デフォルトの名無しさん (ワッチョイ 0ae6-+uhU)
垢版 |
2021/06/08(火) 18:23:16.36ID:/pGHNa0l0
DBはアズールレーンだろ
windowsはどうでもいいよ
2021/06/08(火) 18:34:39.97ID:3w2dwJfs0
>>255
アズールレーンがどんなDBか分からなかったから
wikiで調べたらゲームしか出てこないな
何だこれ
https://ja.m.wikipedia.org/wiki/アズールレーン

DBはOracleでもSQLSERVERでも構わないけど
問題はUI部分をどう使って行くかよ。
これを使うライブラリがないとキツいかも知れない。
まぁOSがWindowsでなければgoogle spreadsheetで代用すればいいんじゃないか?
要件を満たすことが出来ればだけど。
2021/06/08(火) 18:50:55.82ID:Yg8CMFGOM
Excel使うにしてもO365のWeb版Excelでいいでしょ
Windows要らん
2021/06/08(火) 18:58:32.10ID:3w2dwJfs0
>>257
画面制御行わないのであればね。
企業用のofficeライセンスが無いとJavaScriptが使えん
2021/06/08(火) 18:58:53.48ID:AJ4OLay60
今MacのVBA案件渡されて泣きそうなんだが
Windowsのが100倍良いわ
2021/06/08(火) 19:00:26.37ID:3w2dwJfs0
>>259
これな
2021/06/08(火) 21:27:43.29ID:z4uqk83n0
365ならMacでフルで使えんじゃないのか?
262デフォルトの名無しさん (ワッチョイ 0ae6-+uhU)
垢版 |
2021/06/09(水) 00:46:27.31ID:nFlUbaHj0
>>261
ブラウザ版は出来損ないだ
食べられないよ
2021/06/09(水) 07:59:16.59ID:N2Rw0+vQa
ieの操作なんだけど複数タブ開いてて、操作するタブ指定するにはどうすればいい?1つしかWindow開いてない状態だと問題ないものが、2つタブを開いたら、elementが見つかりませんてなる。
264デフォルトの名無しさん (ワッチョイ 5de5-+uhU)
垢版 |
2021/06/09(水) 08:29:04.46ID:n2JobU4y0
>>263
なぜこのスレで聞くの?
タブは別のwindowだよ
2021/06/09(水) 08:30:46.71ID:ddohEedh0
>>263
んー、適当で申し訳ないけど
VBAではあんまりそういうことやらないんだけど、Javascriptで同じ名前の項目を拾おうとするとそれは項目のリストとか配列とかそんな感じのもので拾えるから
多分、その拾ったエレメントはそんな感じになってる気がする。(0)とか(1)とかつけてあげれば何か拾える気がするよ。違うかもしんないけど。
適当でごめんね。
2021/06/09(水) 10:21:52.46ID:w6w52mg40
【Ruby】window_handles・・・複数のウインドウハンドルを取得する
https://www.seleniumqref.com/api/ruby/window_get/Ruby_window_handles.html

Ruby, Selenium Webdriver では、

配列のdriver.window_handles を使う

# 全てのウィンドウ(タブ)ハンドルを取得
allHandles = driver.window_handles

driver.switch_to.window( allHandles[0] ) # そのタブへ移る
driver.get( ここにURL ) # そのURLを開く
2021/06/09(水) 10:22:07.34ID:w6w52mg40
【Ruby】window_handles・・・複数のウインドウハンドルを取得する
https://www.seleniumqref.com/api/ruby/window_get/Ruby_window_handles.html

Ruby, Selenium Webdriver では、

配列のdriver.window_handles を使う

# 全てのウィンドウ(タブ)ハンドルを取得
allHandles = driver.window_handles

driver.switch_to.window( allHandles[0] ) # そのタブへ移る
driver.get( ここにURL ) # そのURLを開く
2021/06/09(水) 15:40:43.61ID:TG9fTaOq0
PC Windows2021.6.8 Tue 17:00
最強のExcel使い決定戦、開幕―財務モデリングの腕を競うe-Sportsトーナメントが本日20時放送予定
マイクロソフトが贈る最新e-Sportsタイトルは「Excel」だ!
https://www.gamespark.jp/article/2021/06/08/109325.html
2021/06/09(水) 15:58:13.91ID:ddohEedh0
バカスw
田中さんは出ないんだ?
2021/06/09(水) 20:26:23.84ID:QmGjGWRQa
ぶいびーえー以前にウチの取締役やってた方が60代半ばのジジイが関数始めて興味が出たらしい。
それはいいんだけどいちいち自慢してくるのがうぜー。
2021/06/09(水) 20:26:54.84ID:QmGjGWRQa
方なんかいらねーよ、クソジジイだよ
2021/06/09(水) 20:57:54.19ID:S3gddm5/0
…突っ込んでほしいのかな。
2021/06/09(水) 21:02:32.60ID:ImacXrDI0
😅
274デフォルトの名無しさん (スフッ Sdea-GN2t)
垢版 |
2021/06/09(水) 22:06:36.55ID:pEB4fflid
option explicit付けない選択肢もアリだと思うけどな。必要あれば宣言するだけだし
forとかで宣言するゴミ変数の宣言が軒並み排除されるのは割りと可読性良くなる
それに型の自動判断がそこそこ優秀な部類なのはVBAの特権
2021/06/09(水) 22:46:34.63ID:31fiFwiN0
>>267
望んでた回答と違うし、自力で解決できたけど。Seleniumて簡単そうやな。食わず嫌いせずにやってみようかな
2021/06/09(水) 22:50:22.93ID:JIfRBOPeH
SeleniumはVBAからでも使える
2021/06/10(木) 00:28:06.94ID:qgbXGMFL0
底辺で上から許可とれないのでSeleniumとかVBA本体に標準装備してください
278デフォルトの名無しさん (テテンテンテン MMde-mYyM)
垢版 |
2021/06/10(木) 17:40:32.42ID:O+Eef3D+M
>>65ですが、社内ネットワーク上の共有フォルダに入れているのが関係してそうです。
ファイルを開くたびに「編集を有効にする〜」が出るので、それがThisWorkbook.saveと相性悪いような気がします。
2021/06/10(木) 18:55:35.54ID:hpxMOKds0
vba初心者すぎて躓いています。以下についてどなたか作成お願いできないでしょうか。

任意のフォルダを指定

その中でファイル名に特定の文字列(ex.請求書)を含むExcelのシート全てを一括保護(パスワードあり)

保存して閉じる

ネットで調べながら作っているのですが、上手く動かず諦めかけています。
よろしくお願いいたします。
2021/06/10(木) 19:09:40.41ID:nj0j+02p0
>>279
質問スレだから聞くのはいいけど丸投げで作ってくれと言うのはこのスレに限らずマナー違反。
大体「死ね」と言われるか「いくらで?」と高額吹っかけられることになる。

板自体の初心者だろうからいきなり言われて自殺されても困るし先に一応言っとくね。
281デフォルトの名無しさん (ワッチョイ 158e-Wt59)
垢版 |
2021/06/10(木) 19:26:01.53ID:jvMqVwBQ0
>>279
死ね
2021/06/10(木) 19:36:37.05ID:EkIqAHSmM
>>279
> ネットで調べながら作っている
ならそのコードを晒せ
2021/06/10(木) 19:58:07.22ID:hPVjNtLg0
解説サイトを見ると、たまにグローバルのApplicationから呼び出すのはなく
New Applicationでインスタンス化して使用しているコードがあります。
これらの違いは何なのでしょうか。
2021/06/10(木) 20:25:42.93ID:nj0j+02p0
>>283
ふーん、出来るんだ。
試してないけどそのままの意味じゃないかな?
今のじゃなくて新しいEXCELのアプリケーションを開いてそっちを操作するってことだと思うけど。

試してみた?
2021/06/10(木) 20:57:17.43ID:NAZXhhkQ0
>>279
ファイルシステムオブジェクトでFilesを取得してForEachでFileをひとつずつ処理する
2021/06/10(木) 21:13:03.65ID:BC8Qobv20
>>279
動きがランサムウェアそのものだなw
2021/06/10(木) 21:22:22.51ID:o9cpCdec0
>>279
丁寧に教える。
初心者なら一気に作ろうとしない。

シートを保護するスクリプトをつくる。
フォルダ内のファイル名をログとかに出すスクリプトを作る
文字列から特定の文字列があったら、メッセージボックス出すスクリプトをつくる
保存するスクリプトを作る

ここまで作れば、どの様にがっちゃんこすればいいかわかるはず
2021/06/10(木) 22:09:01.83ID:oO6awXFS0
Ruby では、wild card を使って、
例えば「*メモ*」で、「メモ」を含むファイル名

# . で始まる、隠し directory, file を除く
glob_pattern = "C:/Users/Owner/Documents/Ruby/*メモ*"

results = Dir.glob( glob_pattern )
.select { |full_path| File.file?( full_path ) } # ファイルのみ

puts results

出力
C:/Users/Owner/Documents/Ruby/Rails インストールメモ.txt
C:/Users/Owner/Documents/Ruby/コマンドのメモ.txt
289デフォルトの名無しさん (ワンミングク MM5a-Srd6)
垢版 |
2021/06/10(木) 22:54:22.53ID:3kBij+1mM
いつもあいつ=ruby馬鹿
2021/06/10(木) 23:32:18.35ID:hPVjNtLg0
>>284
試してみても普通に新しいエクセルが起動するだけですね
ただしウインドウはありません

ブックを作ってVisibleプロパティをTrueにしても表示されませんが、
一度FalseにしてからTrueにするとウインドウが表示されるというバグみたいな挙動があります

話を戻します
最近見たnew application使用例は、コントロールのイベントを無効化するのに
新しいApplicationインスタンスのEnableEventsをFalseにしていました
確かにそうしないとリッスンされるのですが何故何でしょうか
291デフォルトの名無しさん (ラクッペペ MM7f-B2nj)
垢版 |
2021/06/11(金) 08:20:17.83ID:GsORq//4M
二ノ国では日本の法律は通用しないニダ
2021/06/11(金) 08:35:54.94ID:CCQcqmfl0
メリケンのゲームも連邦裁判所がどうたら普通に書いてなかったか
しらんぷりしときゃええがな
2021/06/11(金) 10:02:48.17ID:2HJAl0RV0
>>288
何かそれだとシート全てに保護を掛けるに至れてないな。
・Excelでどうやって使うのか
・細やかなセルやシートの操作はRubyからどうやって指定する?

この辺が満たせないと役に立たないからただのオナニーだね。
2021/06/11(金) 14:43:04.39ID:gasQKA4m0
>>270
いるんだよな大抵ひとりはエクセルでマウントジジイ
マウントしてくるヤツの心理がよくわからん
2021/06/11(金) 21:05:40.69ID:InPX9IhQ0
ExcelでマウントとれないからってRubyだと・・・とか言ってくる奴もな
2021/06/11(金) 22:57:15.06ID:gasQKA4m0
つか爺さん世代はパソコン自体バリバリ扱える人とまるっきしダメな人の格差が激しい印象だわ
2021/06/12(土) 03:51:47.70ID:wJQ4tIOMa
それ若い世代も使えん奴はひどい
2021/06/12(土) 07:30:19.18ID:fS2nWO8U0
若い世代は今スマホしか使った事がなくてPCの使い方分からんって子もかなりいるぞ
299デフォルトの名無しさん (テテンテンテン MM7f-3Q9U)
垢版 |
2021/06/12(土) 09:59:25.51ID:ejCJQwg0M
パスワード付きのファイル(複数)を一つのファイルをまとめようとして
@まとめ.cells(i.3) = パス付き.cells(i.2)
Adicitionaryを使いまとめファイルに統合
両方のやり方を試して@は出来てAが出来なかったんだけど、
パスを無視してAのやり方でやる方法ってないかな
一応、AでUserInterfaceOnly は使ってみたけどエラーが出ちゃって出来なかった
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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