X



Excel VBA 質問スレ Part81

0001デフォルトの名無しさん
垢版 |
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/
0049デフォルトの名無しさん
垢版 |
2024/05/16(木) 08:11:01.82ID:wvYHHh1L
a = -2 と b = 3から符号を格納した2x2の配列を作りたいんだけど、
リテラルで書くとできる。(m0)
変数を埋め込んで書くと出来ないというかエラーもしてしまう。
どうすればいいわけ?
m2は「エラー 2029」になるんだが。


----以下コード
a = -2
b = 3

m0 = [{-1,0;0,1}]

txt_mtx = "{" & a / Abs(a) & ",0;0," & b / Abs(b) & "}"
m1 = [txt_mtx]
m2 = ["{" & a / Abs(a) & ",0;0," & b / Abs(b) & "}"]
0051デフォルトの名無しさん
垢版 |
2024/05/16(木) 11:01:50.94ID:wvYHHh1L
>>50
出来ました

m2 = Evaluate("{" & Sgn(a) & ",0;0," & Sgn(b) & "}")
0052デフォルトの名無しさん
垢版 |
2024/05/17(金) 21:34:35.40ID:cFLB9+cr
わがんねなあ
arrayぢゃだめなんがよお
0053デフォルトの名無しさん
垢版 |
2024/05/18(土) 01:24:21.21ID:E3sG6wkV
>>52
arrayで2x2の配列が作れるかい?
2x2の配列と配列の配列は別物だよ。
0054デフォルトの名無しさん
垢版 |
2024/05/18(土) 06:42:33.10ID:EwoMR623
array(array(1,2),array(3,4))
これでvlookupきぐから2次元だっぺよお?
0055デフォルトの名無しさん
垢版 |
2024/05/18(土) 07:31:25.31ID:rc52mhAW
>>52
x ぢゃ
o じゃ
0056デフォルトの名無しさん
垢版 |
2024/05/18(土) 07:33:08.23ID:rc52mhAW
>>54
x だっぺよお
o ですよ(?)
0058デフォルトの名無しさん
垢版 |
2024/05/19(日) 15:29:46.64ID:Rn8hXJmh
>>49
角括弧([])はEvaluateの糖衣構文ではあるものの、
角括弧内で変数は評価されない
だから変数として書いた部分が変数として評価されず、
名前が定義されてないってエラーである2029が返る
0059デフォルトの名無しさん
垢版 |
2024/05/19(日) 16:02:28.44ID:S79pw3nB
>>54
行列計算したかったんだが、
今やってみると
array(array(1,2),array(3,4))
でも動くな。
2x2の配列を作りたかった苦労は何だったのだろう。
それにしても行列計算の関数て使用頻度少ないな。
0060デフォルトの名無しさん
垢版 |
2024/05/19(日) 17:16:56.28ID:onh0Dy3O
>>59
行列の積はWorksheetFunction.Mmult()、
逆行列はWorksheetFunction.Minverse()、
行列式を求めるWorksheetFunction.Mdeterm()ってのがあったりする
0061デフォルトの名無しさん
垢版 |
2024/05/19(日) 19:15:49.34ID:JwxzucH2
最近VBAを学びなおそうとしてるんだけど、最近はweb情報を取得する場合はIEは使わない感じ?
いまはExcelでスクレイピングするなら何が主流なの?
0062デフォルトの名無しさん
垢版 |
2024/05/19(日) 20:00:33.99ID:S79pw3nB
>>61
旧IEが昨今のネット社会からサポート終了になってるので、
IEだと見えないサイトが有る。
だから、Seleniumを普通は使う。
それにSeleniumのほうがスクレイピングで使えるコマンドが多いからSeleniumを使うのがおすすめ。
だけど、SeleniumはSeleniumbasicをインストールする必要があるので、
会社がそんなの入れるなていうバカな会社ならIEでやるしかない。
0063デフォルトの名無しさん
垢版 |
2024/05/19(日) 20:37:54.05ID:WtygsjHa
>>61
まだIEでもスクラップは可能だけど、古いサンプルはそのままでは動かないケースが増えてる
ちょっと修正すればいいんだけど、これが意外と面倒

>>62
Seleniumは必須じゃないよ
ググればSeleniumを使わずにEdgeやChromeを操作するサンプルが出てくる
ただし、もう一つのWebDriverモジュールは必要なので、面倒なことに変わりないけど
0064デフォルトの名無しさん
垢版 |
2024/05/19(日) 20:42:46.26ID:Ij/qzSiv
VBA学び直すくらいなら、RPA学びながらやった方ができること増える
0065デフォルトの名無しさん
垢版 |
2024/05/19(日) 20:44:06.57ID:Ij/qzSiv
あ、RPAでもスクレイピングうまくいかないサイトもあるので、seleniumはその時やればいい
0066デフォルトの名無しさん
垢版 |
2024/05/19(日) 20:52:40.20ID:S79pw3nB
>>63
結局、WebDriverがいるんでしょ。
セキュリティに厳しいところ向けにSeleniumをインストールしませんがWebDriverは必要ですなんて、
ペテンだよ。
だったらはじめからSeleniumをインストールしたほうがいい。
0067デフォルトの名無しさん
垢版 |
2024/05/20(月) 01:29:27.48ID:JGTmalXt
ユーザーフォームにブラウザコントロールを貼り付けたらどうかと思って試してみたら、中身はIEだった
EdgeベースのブラウザコントロールもVBなら使えるんで、がんばればVBAでもやれそうな気はする

あと、どこかでWebDriverをVBAだけで再現してる人を見た気がする
0069 警備員[Lv.8][初]
垢版 |
2024/05/20(月) 07:27:27.42ID:Frr1ePMh
どうでもいいけど、
イマドキ、ブラウザのブックマークやらお気に入りではとても追いつかなくて
Webクリップアプリは必須とちゃうん?
OneNoteとかEvernoteとかNotionとか
0070デフォルトの名無しさん
垢版 |
2024/05/20(月) 09:02:19.54ID:qs+mOokP
>>68
WebDriverを使わないってだけで、WebDriverの代わりに何かをインスコさせるだけじゃないの?
ページのコード動かしてみたけど、定義されてないっていってくるぜ。
結局、WindowsとExcelだけで動かすには旧IEをCOMで動かすしかない。
seleniumとかWebDriverを使わないっていってるのって、だいたいインチキ。
0071デフォルトの名無しさん
垢版 |
2024/05/22(水) 21:05:14.54ID:fe7cSBQi
Webview2がExcelに対応してくれないから、もう諦めてWinhttpにしたわ
0072デフォルトの名無しさん
垢版 |
2024/05/22(水) 23:01:57.53ID:UIM8lh2m
いいなぁそういう話題
専門部署じゃないけどVBAであれもこれも自動化出来ますって連呼してた中途のおっさんが完全に詐称だった
マクロの記録から始める自動化2003みたいな本を就業中にずっと見て居眠りまでしてんじゃねーよカス
イラつきすぎてストレスやべぇ
0073デフォルトの名無しさん
垢版 |
2024/05/22(水) 23:43:00.55ID:k4clU5FH
自動化できます( ・´ー・`)ドャ
普通なら黙っとくものだよね。
自分の作業でコッソリ使うものだよマクロは
0075デフォルトの名無しさん
垢版 |
2024/05/23(木) 18:12:25.40ID:Q1dZa75D
>>74
で?それが何か?
VBSとVBAは違うものだけど
0077デフォルトの名無しさん
垢版 |
2024/05/23(木) 19:00:21.00ID:JzQ16dZq
>>76
馬鹿は黙ってろ
0078デフォルトの名無しさん
垢版 |
2024/05/23(木) 19:40:19.26ID:dpj0+gCc
VBSとVBAが同じものだと思ってるヤベー奴が本当にいるとは…
0081デフォルトの名無しさん
垢版 |
2024/05/23(木) 20:52:18.18ID:ooDYR7IU
でもVBSなんて今時普通使うことある?
業務ではすんごい昔のWebシステムでClassic Aspで作られてる奴改修するくらいしか当たる機会ないんだけど。
0082!dongiri
垢版 |
2024/05/23(木) 21:03:43.53ID:dpj0+gCc
恥の上塗りに来たの?
0083デフォルトの名無しさん
垢版 |
2024/05/23(木) 22:08:33.68ID:FWY8RwdU
お前が気づかんだけで
スクリプトとかVBSてまだ大活躍だぞ。
オレのテレビ番組録画システムもVBSが結構あるからpowershellに書き換えんと。
0085デフォルトの名無しさん
垢版 |
2024/05/23(木) 22:14:18.80ID:hULUnmW+
お前らみたいな知識の持った奴の煽り合いなんて平和なもんだわ
自動化出来ますおじさんに業務中に今更マクロの勉強ばっかりされても困るって注意したわ
その腐った本と一緒に焼却されろよマジで
0087デフォルトの名無しさん
垢版 |
2024/05/23(木) 22:24:12.77ID:0OPvLYd/
>>86
ID:Y60s2JI8はVBSとVBAが違うものだとわからずに書き込み、それを指摘されて必死にごまかしているだけ
0088デフォルトの名無しさん
垢版 |
2024/05/23(木) 22:44:43.29ID:39D0gm4q
このスレもExcelスレも質が大幅に落ちたよな。VBSとか関係ない話で争い起きたり。
昔のいい感じの流れは復活しないのか?
0090デフォルトの名無しさん
垢版 |
2024/05/24(金) 08:31:09.76ID:pGSt5DHV
前触れも説明も無くとーとつにVBSのリンクを貼り付けた、その意図をご説明願いたい 何がしたかったん?
0093デフォルトの名無しさん
垢版 |
2024/05/24(金) 18:33:50.23ID:h1W7QjwG
ID:Y60s2JI8は例の日本語ワープロが使えたことが自慢だった零細企業の爺だろ
口調が同じ
VBAもわからず絡んでいた馬鹿だよ
0094デフォルトの名無しさん
垢版 |
2024/05/26(日) 15:48:57.67ID:HWyi8KsF
ワープロ自慢て下手すりゃ60代よりさらに上の世代じゃね?70代オーバーとか
0095デフォルトの名無しさん
垢版 |
2024/05/27(月) 16:56:21.21ID:5qLdCYAl
昔のワープロってディスプレイが1行しかなかったのに、あれで文書作れることに驚いたわ。
0096デフォルトの名無しさん
垢版 |
2024/05/27(月) 18:14:37.23ID:GptGfS3+
スレ違いの話題を続ける奴、
ワープロ使える自慢の爺と同レベルの馬鹿なんだけど、
本人達って気付かないもんなんだな
0097デフォルトの名無しさん
垢版 |
2024/05/27(月) 23:03:01.43ID:0fPQ/4br
こんな事で争うなよ…
中途の奴に重圧かけて作らせたの見てみたら
Aさんの営業利益とかセルに出力されたわ 
てめぇどっかのサイト丸ごと引用してやがるだろころすぞ
0099デフォルトの名無しさん
垢版 |
2024/05/30(木) 10:44:30.43ID:1keP0+wx
VBAで正規表現を使うために頻繁に
Set RE = CreateObject("VBScript.RegExp")
を使っているんだが、
VBScriptが終了したらこれを使ったコード動かなくなるの? 汗
ttps://gigazine.net/news/20240527-microsoft-vbscript-deprecation-timeline/
0101デフォルトの名無しさん
垢版 |
2024/05/30(木) 18:29:42.94ID:xMuq3moh
OLEとかCOMとかわからないのかよ
これらはVBSのモジュールだと思ってんのか?
0102デフォルトの名無しさん
垢版 |
2024/05/30(木) 18:39:43.46ID:i9Uo6Qpe
>>101
VBScript.RegExpはVBS(Script Engine)の一部
2024H2でオプトアウト出来る(deprecated phase 1)
2027以降はオプトインでインストール(deprecated phase 2)
その後のタイミング(未定)で廃止
0104デフォルトの名無しさん
垢版 |
2024/05/30(木) 22:24:23.99ID:rTEBvmrR
VBAは互換性の為だけにVB6仕様にしているのだが、
vbsが消えるのを機に切り捨てて、別の仕様にしたら良いよ
古すぎるわ
0107デフォルトの名無しさん
垢版 |
2024/05/30(木) 22:32:05.53ID:jnfHzKfa
まあvbsが消えるのを機と言っても直接的な関係性は無いし
未だにVBAはdeprecationされてない

望む声はあってもMS的にはこの20年間、不可能の判断でしょ
0112デフォルトの名無しさん
垢版 |
2024/06/01(土) 18:29:20.49ID:E98lR33H
>>104
俺もそうかと思ってたんだけど、例えばVB.Netに移行(まぁVB.Netも大概古いけど)するとして、Variantの部分とかどう補うんだろ?
高速化のために、VariantにRangeの値を突っ込んで配列として使ってる人も結構いると思うんだけど、
.Netじゃなくても今Variantなんて型持ってる言語、中々無いんじゃない?
0113デフォルトの名無しさん
垢版 |
2024/06/01(土) 19:50:08.24ID:kjJnPy3V
>>112
Variant型は元々Windows内部のライブラリに組み込まれてる
VBAやVBに独自の物ではない
だから、他の言語でもWindows環境であれば、使おうと思えば使える
0114デフォルトの名無しさん
垢版 |
2024/06/01(土) 20:06:40.78ID:a6kQUbYn
   ____∧∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ~' ____(,,゚Д゚)< VBA逝ってよし!
   UU    U U   \________
0119デフォルトの名無しさん
垢版 |
2024/06/08(土) 06:15:21.88ID:VQ4GsRFs
今でも米国でVBAエンジニアの給与2000万円クラスだってな。日本でも正当にその価値を評価してほしいわ。
0120デフォルトの名無しさん
垢版 |
2024/06/08(土) 15:53:27.66ID:AMNqUEhJ
それはVBAだからではない
米では年収1000万円以下が低所得層
0121デフォルトの名無しさん
垢版 |
2024/06/08(土) 16:25:35.32ID:w8dYoeUh
行政書士は、なぜ高年収なのか?

行政書士は低年収のはずだが、
元から高年収のサラリーマンが資格を取るから、高年収になるだけ

Rubyは、Go/Rust/Elixir の3大言語を超えた!

Stack Overflow 米国年収。2022 -> 2023

Ruby : 9.3 -> 9.9 万ドル
Elixir : 9.3 -> 9.6
Go : 8.9 -> 9.3
Rust : 8.7 -> 8.7

多くの言語 : 6.5〜7 -> 7.3〜7.8

PHP : 5 -> 5.9
Dart : 4.4 -> 5.6

PHP, Dart は、コンピューターサイエンスを勉強していない高卒用言語
0125デフォルトの名無しさん
垢版 |
2024/06/08(土) 17:45:10.95ID:+tUOS0wQ
VBAで正当な評価をして欲しいって字面だけ見ると滑稽だけどめちゃくちゃ今でも重要なスキルだね
でも2000万を引き合いに出すのはやっぱり笑う
0128デフォルトの名無しさん
垢版 |
2024/06/08(土) 22:50:30.69ID:wRtLKwb4
VBAをしっかり書ける人は貴重な存在なはず。だって日本のExcelユーザーの半数はVBAスキルが無いと聞いたから(ヤフーか何かの記事で見た)
VBAが書ける人はもっと自信もって良いと思いますよ
0129デフォルトの名無しさん
垢版 |
2024/06/09(日) 00:52:04.43ID:cUOkkMqU
給料あげてほしいなら上司に相談しなされ
0130デフォルトの名無しさん
垢版 |
2024/06/09(日) 05:29:05.18ID:KL09QE3r
会社役員的にはエクセルでお金を稼いでるわけじゃないという感じだろう
なので、vbaを書ける人に大金は払いたくない
0132デフォルトの名無しさん
垢版 |
2024/06/09(日) 22:09:35.72ID:G4PkZLRY
Excelユーザーなのにマクロ書けない事自体が問題なのだが。
Excelできる=マクロも書けるの図式でしょ?
0134デフォルトの名無しさん
垢版 |
2024/06/10(月) 00:23:38.35ID:Akf4lQfO
マクロのスキルがあっても対人スキルがないから
ネットでマクロの自慢するしか出来ないのか
0135デフォルトの名無しさん
垢版 |
2024/06/10(月) 01:48:33.40ID:XHwkcBml
ExcelもVBAも業務を効率化するための道具だよ

「VBAできます」じゃ経営者はなんとも思わない
これだけ人件費が削減できます、納期が短縮できます、利益が増えますってプレゼンして、利益の何割かを技能手当としてもぎ取れるのが一流のプログラマー
レスを投稿する


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