Excel VBA 質問スレ Part61
■ このスレッドは過去ログ倉庫に格納されています
!extend:checked:vvvvv:1000:512 !extend:checked:vvvvv:1000:512 ExcelのVBAに関する質問スレです コード書き込みや作成依頼もOK ※前スレ Excel VBA 質問スレ Part60 https://mevius.5ch.net/test/read.cgi/tech/1552736349/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured >>587 ありがとう、ちょっと読み込んでみる やりたいことは要は、エクセルにずらーっとリストがあって、その内容を、 雇用契約書の穴埋め書式みたいな他のファイル(エクセル、ワード、pdfあり)に展開したい 展開内容はセル内容の挿入と、履歴書の男・女みたいに、○を挿入する形がある ○で囲むのは止めたほうが良い。ずれる 以下のような形に変えれるなら買えたほうが良い。 □男 ?女 >>589 いや、書式はもう決まってんのよ 変えれるものじゃないんだ □の方が楽だけどなぁ >>587 参照設定してるのに、CreateObject(“Word.Application”)って何? >>592 参照設定はあくまで参照先ライブラリの型をインテリセンスや型指定でネイティブに使えるようにするための設定 ワードのアプリケーションのインスタンスを生成しないとエクセルからワードの操作はできない >>594 そういうことじゃなくて、参照設定でその書き方? っていう。 それやると、レイトバインドとアーリーバインド、どっちになるの? >>593 最終手段はワードとpdfは画像化してエクセルに貼り付けて、そこでマクロるかな… >>594 何か変だと思って試したけど、 こうか Dim w As Word.Application Set w = New Word.Application こうじゃない? Dim w As New Word.Application >>595 >>597 参照設定したときに参照先ライブラリのクラスについて必ずNewキーワードでインスタンス生成しないといけないという決まりはない 参照設定して変数にワードのアプリケーション型を適用してる時点でアーリーバインドになる Newキーワードで生成したインスタンスのポインタを変数で受けてもCreateObjectから返ってくるポインタを変数で受けても同じ というか、参照設定時のインスタンス生成にNew使わないと駄目なんて決まりがあったら、GetObjectで他アプリのインスタンス取得して操作したいときはどうなるのって話になるよな >>598-599 わざわざ参照設定してるのにCreateObject(…)するアホがいるとは… CreateObjectも参照設定もimportだから、どっちか一つでいいんじゃないの? 両方やっても問題ないけど意味はないと思う あんまリンク内容見ずに貼ってしまった俺が悪いな、すまん 山椒設定はライブラリバージョン古いPCじゃ即フリーズじゃなかったっけ 配布するなら、参照設定でプログラミングしてテストして、参照設定外して createobject方式にして配布 配布先で参照設定か外れることがまれによくあるので、こうしとくと無難 参照設定はあまり良い挙動をしない。あと挙動が変な時に発見し辛い createobject()書いたほうが良い >>596 だけどpdfを画像に変換し、エクセルに貼り付けて、テキストボックス挿入がクソ楽だった ソースファイル(.bas + .cls)配布のときは参照設定はやりづらいからな >>606 そそ 参照設定外れても、それとは全く関係ない所がエラーになって止まる 枯れたプログラムだったり慣れてくると気づくけど、そうでないと解決に遠回りする それらも覚えておくべし >>606 のおっちゃんが、createobject()書いたほうが良い、と書いてるけどなぜ? 参照設定が実はおまかんだから 今のPCで動いてても次の環境や他のPCで動く保証がない ってことでしょ? >>611 のおっちゃんが、おまかん、と書いてるけどどういう意味? 参照設定までするのにVBAでする必要ある? なんでそこまで意地になってVBAなんぞに拘るの? >>612 お前の環境(が悪い) スマホゲームで動作が悪い時に言われる事がある おまかんとかおれかんとか >>614 全くこだわってないよ 最初から別言語やツールが良ければそれらで作ってる Excelで99%出来上がってるのにここから戻るってのがありえないってだけ >>614 VBAスレだし >>615 それスマホに限った話じゃないよ >>616 そうか、スマン いつから流行りだしたんだろう VBAに新機能がつかないのはもう諦めた でもIDEはもうちょっと進化させるつもりないん? と思って調べてみたらアドインでなんとかする方法あるんだな 使ってる人いる? .NET使えるから最新環境で作成できるぞ 一回試した後は一回も使ってないけど やっぱファイルと一体化してるのは超便利だ グラフのプロットエリアの位置が設定出来ん! ググったら、デバッグプリントするといいよって書いてあったので、 やってみたら、本当に出来た。 何でそんなんでOKなのかワケワカラン。 >>617 DLL HELLならVisualBasicのVBXが元祖だよ >>618 むしろ開発環境は意図的に使用困難にしていく方向じゃないかな VBAの実行はできるけどVBEは廃止、どうしても編集したい場合は旧バージョンを使ってね、くらいはそろそろ覚悟しといたほうがいいかも MSとしてはそうしたいのは透けて見えるけど、ここまで広まったものを軌道修正するのはなかなかねぇ 代わりはMSがこれまでにいくらでも提供してきただろう お前が新しいものから目を背け続けてきただけだ >>614 のおっちゃんはVBAをバカにしてるけど じぁあVABを使わないなら何の言語でするつもりなの? >>628 のおっちゃんはパワーシェルと言ってるけど 便利なエディターとかはあるの? >>610 , >>610 爺お得意のバッドノウハウだから気にしなくていいよ >>629 PowerShell ISEでいいだろ ただ>>628 のおっちゃんはまともに使ったことないと思う PowerShell + Excel って結構色々ハマりポイントあるし たかがファイルの内容編集に 広範なシステムアクセスを行うPowerShellをつかわにゃならんのか? Ruby の方が、バグらないから良い それに、Rubyスクリプト内で、PowerShell コマンド・スクリプトも実行できるし 外部のプログラムと シェル用にガチガチになったExcelフォーマット別々に扱うのも不便そうだ ExcelVBAこそオブジェクト指向の体現であったのか >>635 のおっちゃんはRubyはなくなるみたいなこと言ってるけど 人気じゃないの?Web関連の仕事もRuby案件が一番人気と聞いたこともあるし。 >>631 のおっちゃんはPowerShell ISEと言ってるけけど そんなのどこでダウンロードできるの? 仕事で使うPCにはまず入っているExcel VBAのエディタこそダウンロード不要で汎用性あると思うけど >>636 一時流行ったし最先端の時期もあったけど、rubyを開発した「まつもとゆきひろ」がサボりにサボって他言語に抜かれまくった 今は全く人気がないし性能も悪い ただ、保守案件が多少残っているので、ruby使っている人は保守案件をこなしながら他言語を覚えている状態 githubユーザーの割合 https://career.levtech.jp/files/img/guide/knowhow/files/oldthing.png あくまでgithubのプロジェクト web開発の主流になっているphpは山程使われている >>638 テキストエディタと変わらんよ、すっげーしょぼいよ 汎用性ではなく、何も出来ないといったほうが正しい atomやsublimetext辺り使ってみると分かると思う >>639 金融系とか外部プログラム不可の業種とかあるんだ 最初から入ってるというのは大きなメリット >>639 のおっちゃんはニートですね。 会社のPCは2流以下の企業以外はインストール禁止がほとんど。 >>640 そうですか じゃRubyやめよう PHP勉強する もともとRubyは糞言語と思ってた 「まつもとゆきひろ」のおっちゃんは開発者によけいな負担をかけさせやがって >>640 そのグラフ、みんな下がってるけど今は何が上がってるの? 結局C#とかJava? >>644 https://www.tiobe.com/tiobe-index// 業務用のjava・C系列、機械学習のpython、webバックエンドのPHP・フロントのjs この辺が固定。特にjavaは強い 明確に上がっているのはSwiftぐらい。iphoneアプリ開発用と思うけどあんまり知らない >>415 デコレータパターンあたりでググると 幸せになれるよ >>641 外部プロクラムなんて金さえかからなきゃ申請して不可になることは少ないよ。 Visual Studioは普通入れられる。 (支店とかは知らんけど。) >>642 ご愁傷様としか言いようがないね そもそもVBAが廃止になっら MSのエクセル使う意味ないわ 365の更新やめるだけ 同じ議論ばっかだなあ。 今までの議論でVBAが一番有利なのは既に何度も語り尽くされてる。 Excel上で余計な申請などせずに、何処でも汎用的に1ファイルで扱えるのはVBAのみ。 汎用実行ファイルの作成の代わりにVBAでやるのはダメだけどね。 殆どの議論が土俵を間違えてる。 PowerShell ISEがどこでダウンロード出来るかっていう質問はこのスレを象徴する質問だな 例えばVBAでは無理な処理はC#なんかを使う。 そうすると参照設定が必要になったり、汎用的じゃ無くなったりする。 それは仕方の無いことだ。 けど、上の方で参照設定の議論が出てるけど、上級者で実行時バインディングにする一番大きな理由はコード使用者に参照設定するよう説明を付けなければならない点にあると思う。 ソースコードだけで完結しないのを良しとしないわけだね。 そういう点からするとVBAのコードだけで完結しないのは一歩後退という感じがするわけ。 勿論、処理そのものがVBAでは無理なものは他言語でやるのは当然のことだけどね。 PowerShellは残念ながら殆どメリットになる所が無いと思う。 C#ならVBAではどうにも無理な処理をExcelファイルに統合出来る。 汎用性からは一歩後退するけど1ファイルにはなる。 PowerShellでVBAにはどうにも無理な処理というのがそもそも殆ど思い付かない。 その上、1ファイルに統合出来ない。 正に土俵が違う感じ。 PS好きだけどこれ以上はスレ違いになるのでやめよう VBA がいいのかそれとも PowerShell や C# がいいのかはそれこそケースバイケース VBA が絶対有利と言い張る ID:xU3mv9gpd みたいな奴がいるから毎回グダグダの議論が繰り返されてるだけ >>655 ケースバイケースだが有利なのは当然。 土俵を限定した専用言語なのだから。 サクラエディタのマクロはそれ用のjavascriptとライブラリが有利、秀丸には秀マクロが有利なのと同じ。 頑張ればサクラエディタの拡張用にPowerShellで何か書けるかもしれんが、そんなことする奴がいるか? 1ファイルの人を納得させるのは無理なんだから諦めよう 職場のPC環境も今後変わっていくものだしそれを邪魔しないなら後は何でも良い >>637 本気で訊いてるの?Vista 以後のWindowsに標準で付いてるよ……orz ケースバイケースって書いてるのにまだ有利なのは当然とか言うアホはどうしようもないな… 100歩譲って有利なケースが多いと言うならまだしも言い切る辺り>>657 の言うのが正しいんだろう 日本語の分からないアホはどうしようもないな。 有利≠絶対にそうしなければならない。 有利なケースが多いことを有利と言っているのが分からないんじゃ話にならない。 まあ、PowerShellが有利なケースなんて見たことが無いけど。 Excelファイルを作るという場合においてVBAが有利かと言えばそんなことは全く無い。 Excel上で作る場合ぐらいだろう。 VBAが有利になるのはあくまでExcel上から動かすからだ。 土俵を限定しているということはそういうことだ。 そういうことを理解出来ない人が多い。 >>662 >Excelファイルを作るという場合においてVBAが有利かと言えばそんなことは全く無い。 え、じゃあ何で作るのが有利なの?? >>663 その処理を実装する言語でしょう。 Excel上で実行しないなら、例えばPowerShell上で某かの処理を実装し、その中でExcelファイルを作成したいならPowerShellで実装すべきでしょう。 Rubyで某かの処理を実装し、その中でExcelファイルを作成したいならRubyになるでしょう。 VBA以外の大抵の場合、Excelファイルがメインなのでは無く、某かの処理がメインでしょう。 >>665 他言語を主張する人は、自分目線でそういう土俵を考慮しない人が多いという話。 ここはExcelVBAのスレだから最初からExcel上で実行することが前提になってるし、最初からの単体実行ファイルや単体実行スクリプトに比べてExcelが介在しない点について汎用的でないことが前提になっている。 (VBAでExcelファイルとは無関係な汎用処理を実行させることは可能でも、その点で有利を主張する奴はいない) そういう前提である以上、他言語との比較では他言語はExcel上で実行する立場で有利不利を論じなければならないからVBAが有利なのなんて当たり前でしょ。 そもそもがVBAが有利な土俵なんだから。 VBAの場合、Excel上でファイルを作るのが前提。 他言語でよくやられてるExcel上では無い所でExcelファイルを作るというのはVBAからすると最初からスレチになっている。 >>664 RubyでExcelインスタンス作るとか、処理が例外的すぎるだろう そんなニッチな場合なら何でやってもいいのは言うまでも無いしそれをわざわざ中心に語る君は相当変だよ >>668 普通は作るとは言わない バカが踊り狂ってるのを冷ややかな目で見てるのがよろし。(またはNG行き) まあでもお前らもExcelに組み込まれてなかったらこんなクソ言語使わないでしょ? 1ファイルならVBAってのは理解出来る 外部参照までするのにVBAってのはなんで?ってなる 余計なのがあるから渡される方も怪しむ >>660 > 有利なケースが多いことを有利と言っている お前はまず日本語の勉強からしろよw >>671 クソとまでは思わないけど最近のモダンな言語に比べたらちょっと面倒だなって思うことが多いわな >>674 だからケースバイケースだって言ってるでしょ 測定器から読みだしたデータから簡単なレポート作るならVBAがいいケースもある その際に測定器とのやり取りのためにメーカー提供のDLL参照するとか >>675 それを言うなら「有利なケース」が既におかしい。 最適なケース、もしくは適したケースが正しいだろ。 お前の>>659 に合わせたらそうなっただけだよ。 >>669 そうじゃなくて、ここは汎用言語じゃ無いVBAのスレだから比較するならVBAで想定されている利用に限ると言っている。 それ以外で比較しても意味が無い。 だからVBAの土俵に合わせて貰わないとな。 汎用言語としてVBAを使うという話ならVBAが優れているなんて言う奴はいない。 Excel上でExcelファイルを作るならVBAが有利だし、そうじゃ無いなら想定外。 本来、どの言語を使うべきかなんてケースバイケースなんだが、その既にケースバイケースの件に踏み込んでることに気付いていない奴多数。 >>678 > それを言うなら「有利なケース」が既におかしい。 > 最適なケース、もしくは適したケースが正しいだろ。 ますますアホ晒してるぞw 誰も最適なんて言ってないし >>681 > 本来、どの言語を使うべきかなんてケースバイケースなんだが、その既にケースバイケースの件に踏み込んでることに気付いていない奴多数。 いや、必死になってる1人だけじゃね?w 「Excelファイルを作る」って表現が気持ち悪すぎて無料 まあ大抵の問題はVBAというよりもセルやブックを直に参照してるところなんだけどな。 >>683 まだ分かってないから笑えるw VBAの時点で「ケース」なのに必死に否定しようとしてるアホがいる。 >>682 お前のレベルに合わせるの疲れるわw 「有利なケースが多いことを有利」の2つの有利は厳密に言えば意味が違う。 したがってこれ自体は間違いとは言い切れない。 しかし、お前の言うようにこれが間違いだとすれば>>678 がその結論になる。 つまり>>675 が間違っているか、>>678 が正しいかのどちらかだ。 たぶんこれ理解出来ないんだろうな。 ホント疲れるw ここでVBAを否定しようと必死になってる奴って、アセンブラでドライバー作ってる奴にもモダンじゃないとか言ってそう。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる