Excel VBA 質問スレ Part64

■ このスレッドは過去ログ倉庫に格納されています
2019/12/02(月) 23:43:54.18ID:ngrqyTy20
!extend:checked:vvvvv:1000:512

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

※前スレ
Excel VBA 質問スレ Part63
https://mevius.5ch.net/test/read.cgi/tech/1568630099/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
580デフォルトの名無しさん (ワッチョイ de8c-u3Kg)
垢版 |
2020/02/12(水) 17:49:54.70ID:5NT9XmcH0
VBA学びたいんだけど、office以外でVBA出来るところってない?
2020/02/12(水) 17:53:09.88ID:yl8WS00pa
LibreOfficeで使える。
インテリセンスが使えないからだれも使わないしそれでもLibreOfficeつかうならpythonで動かす。
2020/02/12(水) 18:16:19.33ID:gfctBwevM
今から学ぶなら>>414かGoogleスプレッドシートのGASにしとけば?
どっちも無料だしVBAはレガシーでもうすぐ無くなるよ
2020/02/12(水) 18:20:25.60ID:ktDCHij50
>>579
ありがとうございます
2020/02/12(水) 19:23:16.28ID:ATdl69jc0
>>580
MS Office以外でという意味ならLibre OfficeのマクロでVBAが使えるがMS Officeとの互換機能のための物だから完全ではない
2020/02/12(水) 20:30:50.73ID:H+ZtqLYW0
>VBAはレガシーでもうすぐ無くなるよ

10年後も余裕で残ってると思うが・・。
2020/02/12(水) 20:51:59.56ID:yl8WS00pa
別に先端の言語、例えばスカラーやハスケルを使ったとしてもやってることはVBAを使ってやることと同じじゃね。
それがオンプレやウェブを通じてデータを共有するかエクセルで個人でデータを扱うかの違いだけでさ。
目的がデータ共有じゃなくて個人のデータ分析・見える化なら簡素なVBAのほうが優秀に決まってるとおもうが。
2020/02/12(水) 20:58:51.98ID:yl8WS00pa
他の言語ならGUIやらグラフ作成のプログラミングが必要なところがエクセルならなしでいいし自分用に簡単にカスタマイズできるとかチートだろ。
その便利さが分からないってちょっとかわいそうだと思うが。保持できるデータ量が少ないっていう人がいるかもしれないけど
それこそDBと接続すれば解決だろ。なんで他言語信仰があるのか俺にはようわからんがー
2020/02/12(水) 20:58:54.89ID:3+kd1fAQ0
Haskellって最先端なんか?
凄い古い言語って印象だけど
2020/02/12(水) 21:04:01.64ID:3+kd1fAQ0
>>587
ゲーム作成には不向きだったな。ありゃーキツかった
あと機械学習にもまるで向いてない。vbaは内部的にシングルコア臭い。

通常の事務用途なら普通に最強なのは言うまでもないので、あえてそれを言ってないだけではないんだろうかね
2020/02/12(水) 21:16:37.85ID:yl8WS00pa
関数型言語だから最新ではなくとも先端だと思うけどな
2020/02/12(水) 21:22:44.30ID:3+kd1fAQ0
あぁ先端か、最新とごっちゃになったよスマン
592デフォルトの名無しさん (ワッチョイ 838e-k5Lv)
垢版 |
2020/02/12(水) 22:17:27.48ID:Tv6jd7oA0
>>582
馬鹿は死ねよ
2020/02/13(木) 00:45:56.80ID:k/bVZGqk0
>>580
vbsでよくね
ちょっと遅い以外はVBAより使い所あるよ
2020/02/13(木) 03:14:24.86ID:r2M7N5Eg0
VBAの利点なんてExcelに標準で載ってる以外にないだろ
まあその利点が大きすぎて他ので代替できないんだけど
はやくTypeScriptあたりが標準にならねーかな
2020/02/13(木) 07:45:49.49ID:u4d6QES9d
Excelが起動してない状態ならどんな言語でも良い。
そもそもVBA使えないし。
でも、Excel起動した状態で、わざわざ別言語呼び出すのは糞だろ。

VBAが使える環境ってのは競合がいない。
2020/02/13(木) 11:47:37.56ID:AalEMFde0
Excel は、web プログラミングに対応していないから、
ウェブアプリでは、データベース・CSV の方がよい

そうすると、Ruby, Python, Julia で、
VSCode, Jupyter Notebook で処理できる

ローカルPC 内だけで処理できない場合は、他の言語がよい
2020/02/13(木) 15:06:53.86ID:r2M7N5Eg0
>>595
>でも、Excel起動した状態で、わざわざ別言語呼び出すのは糞だろ。
別に糞ではない
598デフォルトの名無しさん (スプッッ Sd32-NAxV)
垢版 |
2020/02/13(木) 15:35:27.13ID:3ooJhDB3d
専用アプリがたくさん出てきた今じゃエクセルなんてメモ帳くらいしか使わなくなった
この先もなるならんと思うけど用途は縮小されるだろうな
2020/02/13(木) 19:19:57.68ID:h5k0eGtyx
スレ違いかもしれませんが、VSTOってどうなんでしょうか
よく使われているのですか?
2020/02/13(木) 21:34:00.53ID:K4OvKims0
>>596
rubyだけはないかな
もう完全に更新停止しちゃったし
2020/02/14(金) 03:17:43.34ID:khV78Z7h0
いつものruby厨が糞なのはわかるが年末にメジャーアップデートしたばかりだよ!
2020/02/14(金) 12:24:19.36ID:loUY2HXBa
>>599
使う人は使うだろう
603デフォルトの名無しさん (ワッチョイ b7f1-pc6R)
垢版 |
2020/02/14(金) 13:53:47.99ID:6u1vRBgq0
PHPでいいのにRuby
JavaでいいのにKotlin
余計なもの作りすぎてやしないか?
学習しないといけない選択肢や実際に学習しないといけないリスクが増える。

OSにおけるWindowsに対抗したMac
ワープロのWordに対抗した一太郎
スマホにおけるAndroidに対抗したiPhone
にも同等のことが言える
2020/02/14(金) 14:24:36.22ID:yzfFAhi1M
>>603
自由競争社会ってのはそういうもん
選択肢が多くて選ぶのが嫌なら共産国にでも行けばいい
2020/02/14(金) 14:55:02.63ID:oTRYZ3a7M
PHPでよくないしJavaでよくなかったから新しいものが作られるのは当然
2020/02/14(金) 15:48:59.78ID:+9NDg3r60
未だに、Webサイトの最高速度は、Ruby on Rails。
他の言語は複雑だから、高コストで低品質になるw

表示速度が“異常な”Webサイト「dev.to」とか
https://dev.to/

元乃木坂46 の川後陽菜のWebサイト、SKIYAKI とか
https://kawagopro.com/
2020/02/14(金) 19:06:02.89ID:fyxPtfni0
日本語不便だから簡素化しよう  → わかる
日本語不便だからZ国語を作ろう → 意味不明
2020/02/14(金) 19:36:15.93ID:xdYnDj0z0
おれ今は何でもpowershell
.NETやWin32API呼べるしね
2020/02/14(金) 19:39:20.92ID:4wjLsdfS0
>>606
WEBサイトが重くなる原因って、外部サイトから取り込む広告バナーやアイコンが原因なことも多いよな
そういうケースでは自分のサーバーをいくらチューンしても無駄だし
2020/02/14(金) 20:40:36.45ID:fYXT+aFT0
>>606
何の機能も無いんだからそりゃ早くて当たり前だ
2020/02/14(金) 22:25:32.83ID:zOM6NzfF0
>>603
Wordよりも一太郎の方が先じゃなかったか?
少なくとも国内では
2020/02/15(土) 11:21:56.89ID:AUuvC6yh0
>>597
そんな手間、普通はしないし、そんな汚いコード書きたく無いのが普通。
レガシーコード嫌ってもっと酷いコード書いて何とも思わないのは害悪だね。
2020/02/15(土) 11:25:02.18ID:AUuvC6yh0
>>599
それはアリだ。
会社内で使える環境、積極的に使っていく環境なら大いに活用すべし。

ただ、VSTOって名前は今でもその名前で良いのか?
もはや、名前なんて無くなった感覚だな。
俺も個人的に使ってる。
2020/02/15(土) 14:20:57.52ID:0SWjbLN40
>>612
別に普通
コードも汚くならない
2020/02/15(土) 17:13:03.49ID:Lm2T2Naqd
>>614
例えば、VBSからVBAを呼び出し、VBA経由でWin32APIを呼び出す。

VBAからShell関数で別exeを呼び出し、そのexeはtxtファイルを残すように作成されており、そのtxtファイルの内容を見て連携する。

あるフォルダを常に監視するプログラムが動いており、そのフォルダにファイルが置かれると其れを読んで動作するプログラムがある。別のプログラムがそのフォルダに指示するファイルを置いて連携する。

どれも、仕方なくそういうプログラムを書くことがある。
しかし、こういうピタゴラスイッチのようなシステムは汚い。
1言語で完結する方が良いのは明らかだ。
そんなこともわからない奴は素養が無い。
動けば良いなんて考えの奴とは組みたく無いね。
スパゲッティで炎上案件必至だ。
2020/02/15(土) 17:32:31.69ID:w0AGl45A0
>>615
そういうシステムの場合は1言語で完結する方がいいって?
1言語でもやりたくないな
プロセス毎に担当とかならいいが
2020/02/15(土) 17:34:00.99ID:w0AGl45A0
そのプロセス毎に言語が違って余計な手間が増えるのも非効率だな
2020/02/15(土) 18:20:20.91ID:0SWjbLN40
>>615
>どれも、仕方なくそういうプログラムを書くことがある。
そんなプログラム仕方なくでも書くな
たからそんな頓珍漢なシステムしか作れないんだよ
素養なさすぎでしょ
2020/02/15(土) 18:27:08.22ID:Lm2T2Naqd
>>618
だから>>597が正にそれだろw
バカがwww
2020/02/15(土) 18:27:51.31ID:Lm2T2Naqd
こっちの主旨も伝わらないとはねw
2020/02/15(土) 18:33:14.64ID:8KFvWLo00
ググルのスプレッドシートってまだまだだねぇ・・・
Excelの完成度の高い操作性に慣れると、あんなの使ってらんねーわ・・・
2020/02/15(土) 19:16:30.13ID:OXybc0Po0
あれはGoogleのAPIを使いたい時用。
2020/02/15(土) 19:16:36.07ID:0SWjbLN40
>>619
>>594は糞ではないが>>615は糞
極端なものしか語れない/作れないの?
素養無いね。いやマジで
2020/02/15(土) 20:04:11.40ID:Lm2T2Naqd
>>623
まだ伝わってね―のかよ。
>>615は糞の例だっちゅうのw

Excel起動した状態で、わざわざ別言語呼び出すのも基本的に同じだ。
2020/02/15(土) 20:27:26.64ID:Lm2T2Naqd
ちなみに、俺は実際には>>615のようなものを仕事で書いたことは無い。
しかし、世の中には>>615のような腐ったのはあったりする。
>>615の内の1つは俺がネットワーク系のコード書いてた時にある技術的課題をすぐにクリア出来なかった時に上司や他のメンバーから提案されたものだ。

結局、Win32APIで何とかしたが。
2020/02/15(土) 20:46:44.54ID:0SWjbLN40
自分でも書かないような極端な事例を勝手に出してそれに対してマウントとるオナニー気持ちいい?
コミュニケーションの素養も無いね
2020/02/15(土) 21:00:26.03ID:Lm2T2Naqd
>>626
プッw
話を変えようとしても無駄。

Excel起動した状態で、わざわざ別言語呼び出すのも糞。
2020/02/15(土) 21:02:22.67ID:Lm2T2Naqd
ちなみに、極端でも無いのは上司や他メンバーが提案したことからも明らかだが。
糞だけど実際にはそんな事例は結構ある。
2020/02/15(土) 22:00:26.34ID:0SWjbLN40
>>627
それは糞ではない
2020/02/15(土) 22:13:15.78ID:Lm2T2Naqd
>>629
プッ
センス無いなあw
2020/02/15(土) 22:30:05.36ID:0SWjbLN40
>>630
素養って言葉使うのやめたの?
2020/02/15(土) 22:51:41.05ID:Lm2T2Naqd
>>631
プw
2020/02/15(土) 22:54:09.55ID:K8Q8SzUI0
横からだけど
VBAでは足りないことが多いし、言語も冗長でできれば書きたくない言語
けど、気持ちは分かるわ。自分もエクセル神、VBA最強と思ってた時期があったw
634デフォルトの名無しさん (ワッチョイ c2eb-GUQA)
垢版 |
2020/02/15(土) 23:04:02.01ID:DNF/C+cP0
よろしくお願いします。

A1からA500まで順に走査し、セルの値が「あ」「い」「う」「え」「お」のいずれかなら同行のB列に「OK」と書く

こういう命令を書きたいのですが、
if ws.cells(row,1)="あ" or ws.cells(row,1)="い" or ws.cells(row,1)="う" or ws.cells(row,1)="え" … then
という書き方しかしりません。

たぶん、
「セルの値が「あ、い、う、え、お」のどれかの場合は、」という書き方があるんじゃないかと思います。
ひとつひとつORで並べるんじゃなくて、そのように書くにはどうすればよいのでしょうか?
教えてください。
2020/02/15(土) 23:28:52.14ID:UxF7uCH30
select case a
case "あ","い","う","え","お"
cells (i,j) = "OK"
end select
2020/02/15(土) 23:41:20.13ID:DNF/C+cP0
>>635
ありがとうございました!!
637デフォルトの名無しさん (ワッチョイ 1f94-NAxV)
垢版 |
2020/02/16(日) 01:36:16.88ID:hu3zE7F/0
そもそも他言語使うのにエクセルシートを開くのがダサい
2020/02/16(日) 05:43:51.26ID:UuI8sGIrM
pythonでもjsでもいいからさっさとVBA廃止して欲しいわ
2020/02/16(日) 06:57:36.74ID:v3JJWFtt0
使わなけりゃいいのに
640デフォルトの名無しさん (スプッッ Sd32-NAxV)
垢版 |
2020/02/16(日) 07:30:58.53ID:G5lQpk7Jd
VBAを使ってるって人に言うのが恥ずかしい
2020/02/16(日) 09:18:13.09ID:1S/Tig2+0
VBAアレルギーがこのスレにいるのが恥ずかしい
2020/02/16(日) 09:39:35.57ID:qdCD1uit0
VBAよく使うし便利なんだけど嫌われている理由って何?
2020/02/16(日) 10:08:05.95ID:+qE5f9v2a
>>642
出来る人が多くなると自慢にならない
2020/02/16(日) 11:01:43.69ID:U1tPq90o0
>>642
いつ切り捨てられるかわからないストレスの反動
2020/02/16(日) 13:09:01.06ID:tByZLPoS0
>>642
アンチがうるさいだけ
2020/02/16(日) 13:21:44.77ID:qdCD1uit0
最先端を追っかけて一般に広がったらダサく見えちゃう人のパターン?
2020/02/16(日) 13:46:18.68ID:onfJSXj2a
使いこなせないけどとりあえずスカラー使っとけばマウント取れるという風潮
2020/02/16(日) 13:54:18.04ID:gXg/oo9KM
スカラーってなぁに?
649デフォルトの名無しさん (ワッチョイ b7f1-pc6R)
垢版 |
2020/02/16(日) 14:33:37.03ID:OOULfQDL0
オナラを音を出さずにする人のこと
2020/02/16(日) 14:49:07.22ID:myP/3poOM
>>642
言語仕様が古臭すぎる
モダンな便利な仕組みが使えないしデフォルトの関数やライブラリも貧弱
Excelっていう表を使うのにリスト周りの機能が劣悪なのが個人的に最高に糞
sortやfilter、mapぐらいは用意しといてくれ
2020/02/16(日) 17:03:22.19ID:crcHCgfv0
Excelは神じゃないし、VBAも別に古くないなんて言わない。
でも、VBAを使う場合では他に選択肢が無い。
他のモダンな言語使ってダサさ極まりないプログラムを書くことになる。

Excelを介さずにExcelのファイル作る場合ではVBAはお呼びじゃ無いし、Excelを介して何かする場合はVBA以外がダサイプログラムとなる。
2020/02/16(日) 17:23:12.06ID:bd16la8D0
だよな
VBAでIE操作するなんてダッサイよな
Excel VBAでWord操作するなんてもっての外だ
653デフォルトの名無しさん (ワッチョイ b7f1-pc6R)
垢版 |
2020/02/16(日) 17:37:11.50ID:OOULfQDL0
>>651
日本語を
2020/02/16(日) 19:45:47.28ID:264B3TMP0
それはVBAでIEを操作したいんじゃなくて、
取り出したデータをシートに書き込みたいからVBAなんだよ。
2020/02/16(日) 20:02:56.16ID:bd16la8D0
pythonでExcelを操作したいんじゃなくてpythonで弄ったデータをシートに書き込みたいからWin32APIなんだよ
2020/02/16(日) 20:46:33.79ID:YpWFdUlV0
>>648
しめつけ痴漢ビームだろ
2020/02/17(月) 17:50:27.95ID:vNEYHF2AM
VBAはコレクションが貧弱すぎ
そしてVBの言語仕様が大嫌い
2020/02/17(月) 18:40:54.09ID:Pe28e1YX0
ちょっとそれ詳しく
2020/02/18(火) 03:35:58.54ID:TF8ZYXaL0
VBAに継承があったら、もっと楽しくコード書けるのになあ
2020/02/18(火) 06:20:13.81ID:8hbClqqAx
クラスはサポートしてるのに継承がなくてポリモーフィズムしか使えないからね
クラスを作るのが面倒で仕方ない
2020/02/18(火) 07:31:23.14ID:EfyTSHg3M
せめてコンストラクタ(VBAだとInitialize)の引数は欲しかったわ
2020/02/18(火) 10:24:05.40ID:6ZsCABKsa
良くわからないんだがexcelに必要か?
2020/02/18(火) 13:47:20.72ID:chdQR5M40
excelが必要か?に見えた
2020/02/18(火) 18:45:59.17ID:/5Mxz8ykd
CADで書いたデータをDXFにしてメモ帳で開いて読み取って、エクセルシートにオートシェイプで書いたんですが、円の中にテキストがあるやつのみグループ化したいんですがいい方法ありますか?

調べると座標点から追ってみたいな方法しかないですか?
2020/02/18(火) 21:01:24.57ID:F3RpBkgw0
自分の仕事くらい自力でやれば?
2020/02/18(火) 21:11:50.33ID:YCW0Xx5j0
>>659-660
継承は愚策であることが判明しているのでは?継承よりも委譲をつかいなしあ
2020/02/19(水) 19:57:26.16ID:mzzoJTJv0
VBAよりpythonの方が実行速度が速いなら使ってもいいが、そうじゃないんだろ?
2020/02/19(水) 21:51:44.49ID:kwCZcDbv0
マクロの実行速度なんてほぼExcel側で決まるんだから言語変わっても変わるわけないだろ
そもそもたかがExcelのマクロに実効速度とか要求するか?
2020/02/19(水) 22:21:56.27ID:mzzoJTJv0
ん、いや、pythonに何かしらメリットがなきゃ、乗り換える意味なんてないよなと思って。
2020/02/19(水) 23:50:48.47ID:IiRLq+jSM
VBA使わなくていいっていう最大のメリットが
2020/02/19(水) 23:58:20.17ID:FWuAEXxDa
VBAがないなら もうWindowsを使う意味はないってユーザーも多いのでは
2020/02/20(木) 00:18:21.99ID:AoQGP1nv0
手作業で数式を入れるだけならオンラインのスプレッドシートで十分だもんな
2020/02/20(木) 06:08:18.51ID:L/aFoY2Cr
スプシでネイティブアプリ並の速度でかつVBAが使えれば言うことないんだけど
2020/02/20(木) 06:43:28.49ID:2rLj+nIZM
>>669
お前さんがメリットないと思えばそのままでいいんじゃね?
俺はpythonなら乗換えるよ
理由は>>659-661辺りに書いてある通り
675デフォルトの名無しさん (ワッチョイ 737c-3FYl)
垢版 |
2020/02/20(木) 07:44:40.62ID:D4QlVP2L0
端末にPythonインストールされてないし使えない。
2020/02/20(木) 12:18:14.02ID:IgUrfnDG0
っていうかPythonつかうならVB.netでいいんじゃないの??
C#でもいいし。
2020/02/20(木) 12:52:29.82ID:2rLj+nIZM
>>638の話じゃないのか?
現状ならそりゃVBA使うしかないわけで
外部から制御するならC#でもPowerShellでもいいわな
2020/02/20(木) 19:50:27.27ID:oaOtGalk0
Excel VBAスレでpython信者が何いってもねw
2020/02/20(木) 22:25:17.20ID:Gh4fiqHN0
エクセル中心でやりたいことはvbaでも十分だよ
何かの作業のほんの一部にエクセル使うときは、そもそもエクセルをフレームワークとして使うこと自体間違ってる
2020/02/21(金) 21:53:28.61ID:pWRsPetz0
得ろサイトの動画や画像を根こそぎゲットするためにサイトの解析してるんだけど
ソースにないリンク(javaとかで生成されたリンク)ってVBAで取得できるの?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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