バカ「VBAマクロは記録して再生するだけの物」ぼく「パイプとシェルとkernel32を呼べるから基本的に何でもできるが」
■ このスレッドは過去ログ倉庫に格納されています
バカ「……出来ないことが多い」
ぼく「いや、だからシステムコールができるしWindowsの仕組み上、パイプ渡しができるから、C#のバックエンドとして動かしたりC++の関数を呼び出したりできるだろ。ptrsafe declare functionやptrsafe declare sub使えるじゃん」
バカ「あのさぁ!そんなマニアックな例やめてくんない?」
マニアックでもないだろ、MSDNにあるだろ >>3
単体だとしてもVBAはVB6ベースだからできないことを探すほうが難しくない?
.'llliiiiii, ,,_
: ゙゙゙゙° ,illll xllllllllliiii,,,,,、
..,,,,,,,_ ,ill!゙ ,l!!!!!"
liiiiil!゙゙゙~゙゙lli, .,il!゙`
.゙゙゙゜ .llll、 .,il!゙
,llll` ,,ill゙,,illlllliii, ,i、 、
.,ll!゜ ,,illlll゙° .llll ..,,il゜ ll,,
,i!゙′ illl!゙゜ '!lli,,,,,,iii!゙゜ ゙゙!lllliiiiiiiiiiiiiiillllll、
,,l゙° .'゙′ .゙゙゙゙゙゙゙゙° : ``:
` >>17
いま私が質問してるの あなたっていつもそう >>19
いえ、質問の意図がわかりません
「なぜ呼吸をしてるのか?」これに対して、「なぜ呼吸をしてはだめなのか?」というのは正当な反問権だよ
なぜならば、なぜ呼吸をすることがいけないのかを理解できないからです >>20
わたし いけないなんて 一言書いてないよね?なんで嘘つくの >>1
1秒ごとに得られるセンサーの値を読み込んで平均値とか標準偏差を出すっていうプログラム作ったことある
最初はエクセルのVBAでやったがとにかく重い
あまりの重さにC言語でファイル読み込みからの数値を計算するプログラムを組んだらメチャクチャ早くなった
こういう経験からすぐに分かるけど
ちょっとでも複雑な処理をエクセル上で行わせるとシャレならんコスパ悪い
何の意味があってプログラムと呼べるレベルの処理をエクセル上でする必要があるのか未だにわからん
ゆえにVBAが大して勉強されないスキルだと断言できる 何でもできるからと言ってvbaを選択することは少ない VBAは、私はVBAできませんと言いつつこっそり使って手抜きをするためのシステムだぞ? なんで呼吸してるのか
生命活動の意地に必要だからだよ 質問の意図なんか無くても答えられるだろ 呼び出せばなんでもできるとか言い出したらほとんど全てそうだろ
単体でできることで主張しないからバカvsバカに見えるんだ >>22
では、問うた質問の意図がわかりませんが
あなたはなにも悪くもない会話形式のスレ立てを侵害したいと言ってるのですか? >>31
いいからさっさと答えろよ
大して興味ねーんだからよグズが >>31
何故会話風にしたのか
しか聞いてないんだが excelでpython扱えるようになるらしいからもうVBA完全にいらなくなるよね バカ「VBAマクロは記録して再生するだけの物」
ぼく「パイプとシェルとkernel32を呼べるから基本的に何でもできるが」
バカ「……出来ないことが多い」
ぼく「いや、だからシステムコールができるしWindowsの仕組み上、パイプ渡しができるから、C#のバックエンドとして動かしたりC++の関数を呼び出したりできるだろ。ptrsafe declare functionやptrsafe declare sub使えるじゃん」
バカ「あのさぁ!そんなマニアックな例やめてくんない?」
マニアックでもないだろ、MSDNにあるだろ >>38
いや、pythonこそ単体だと何もできないよ
マイクロソフトの仕組みだとworkbookインスタンスを操作するようになってるだけだからさ
gitではコマンドライン叩いて使うだろ?
gitguiを起動すれば多彩なことできるだろ?
VSでgitguiやコマンドライン叩かなくても使えるようになったけどああいうもの
ネイティブに動作するので、実はVBAはワークシート操作では最強の言語なんだよ また架空人物を作り上げて遊んでんのか
いい加減にしろ バカ「VBAマクロは記録して再生するだけの物」
ぼく「パイプとシェルとkernel32を呼べるから基本的に何でもできるが」
バカ「……出来ないことが多い」
ぼく「いや、だからシステムコールができるしWindowsの仕組み上、パイプ渡しができるから、C#のバックエンドとして動かしたりC++の関数を呼び出したりできるだろ。ptrsafe declare functionやptrsafe declare sub使えるじゃん」
バカ「あのさぁ!そんなマニアックな例やめてくんない?」
マニアックでもないだろ、MSDNにあるだろ バカ「VBAマクロは記録して再生するだけの物」ぼく「パイプとシェルとkernel32を呼べるから基本的に何でもできるが」 ★2
https://mi.5ch.net/test/read.cgi/news4vip/1694927046/ 何と比べて何が遅いのかを書いてない。
マクロを記録再生した場合に重くなるのはあるが、言語的なVBAの動作速度はPythonやC♯より速いんです。
でもアセンブラやCより遅いよね!って言うならそうですがね そもそも昔、VB6は遅いと言われた。
これはCと比べて遅いんだ
VBのDLLを扱う必要があるから、そのwrap分遅い。あとはvariantって概念が遅く感じさせられる原因
VBAで言うとVBのDLLは不要なのでそこは速くなる >>57
金にならないからだよ
きちんと作ると手間は同じくらいかかるのに、pythonやC♯なら金を払うけど、VBAになった時点で「記録で作れる簡単なもの」ってイメージがあり、コードが丸見えだからな 例えばエクセルでA1からABZ1000000までのセルに「修行するぞ!」って文字列を入れてみてよ
pythonでも何でもいい
最速になるように作ってみてよ
それよりVBAのほうが速くなるから ちなみに16GB,9世代i5で
修行するぞマクロの処理は5秒だよ 会話形式が面白いと思ってやってみましたって書くのそんな恥ずかしかったのかw 遅いってのがトラウマレベルで反論してくるなこいつ
落ち着けよ データと呼ばれるもの、例えばCSV、JSON、数値、日付、文字コード、画像、バイナリといったもの
それを作業したい、つまり加工、調査、一括処理、自動化するとなれば
学ぶべきはコマンド
なぜならシェル上に用意されたコマンドというのは過去の先人たちがすごく苦労してつくったプログラムの集まりだから
自分でそれらの車輪の再開発をしちゃう人はすごく無駄な苦労をしてると知った方が良い >>71
いや、Cでやったのと同じコードを書いてみなよ
エクセルシートに貼っつけるからそうなるんだ
テキストで呼んで演算してテキストに吐かせたか? >>72
でも確かに最近配列とテキストで処理させるコード書いてみたけど早かったなVBAはすごいかもしれん バカはエクセルシートにcellsを使って貼っつける
これはもうcells関数がどう動いてるのかspyでAPIを追ったりwndbgはしらせればわかるのに
それすらできないアホがCで作ると言い出す >>74
そうそう
シートを使いたいときはCopyMemoryでセルハンドルに流し込むと速いよ それかタブ区切りをClipしてpasteするとか
タブ区切りストリームをシートに送るかする >>76
俺は本職じゃないんだよ
管理業務でやむなくVBA使わざるを得ないけど楽する為にやってる素人だ >>78
管理業務でもVBAがきちんと使えると劇的に効率化を果たせる >>79
社内のシステムがクソだから工夫せざるを得ないんだよ 覚えるべきはコマンド←これは覚えてないほうがおかしいよ
そのコマンドをコールする←うん、それも正しいよ
だからVBAは不要←うん、おかしいよね
EXCELを一切使わないなら正しい
でもコマンドをコールするプログラムを作って結果を取り込むとかするのはアホ
なぜならEXCELで一番時間がかかるのはそのシートに貼っつける所だからセル上で計算するとかしてない限り普通にVBAを使うほうが速くなるんだ >>82
せっかくVBAあるのにPythonで動かそうとする記事よく見るのはなんでなの? >>83
それはPythonの方が計算ライブラリ的に優れてるからだよ
マトラボ使ってEXCELに貼っつける人たちは
マトラボの代わりにPythonを使うでしょ?
そしたらPythonからExcelに貼れると便利だって思うの そんなことより週に何回オナニーする?
俺30で週1なんだけどやっぱり少ないよな? もうPythonで全部できるよね
そんな複数言語とかWinの特殊仕様無視してPythonで書くよね オートメーションを用いて好きな言語で外部から操作した方が良いと思うのだ VBAでDB作ろうとするとクソ重すぎて、結局MySQL+PHPに行き着く 別言語で取集アプリ作って出力したファイルをVBAで表にする方式で良くないか?
何でわざわざ制御をEXCELに持たしてんだよ カーネルってウインドウズAPI?
ウインドウ制御とかで使ってるな レスしたすぐだがちがうかスリープがカーネルか
忘れちまうもんだな >>99
最前面のウィンドウの名前取ったりする時に使うんじゃなかったか
思えばpdfの資料をあれこれする時に使ったかもしれない >>100
ウインドウの画面サイズ動かすのに使ってる ■ このスレッドは過去ログ倉庫に格納されています