Excel VBA 質問スレ Part84 (114レス)
Excel VBA 質問スレ Part84 http://mevius.5ch.net/test/read.cgi/tech/1759297002/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
16: デフォルトの名無しさん [sage] 2025/10/04(土) 13:53:38.50 ID:HdBE9K3u Excel女子の言い分を真に受けると https://exceljoshi.cocoo.co.jp/media/excel-powerquery 必要なひとは使えばいいんじゃね?となる Excelエキスパートの君らには、あんまし使いどころが無いんだろう http://mevius.5ch.net/test/read.cgi/tech/1759297002/16
17: デフォルトの名無しさん [] 2025/10/05(日) 06:02:00.45 ID:knUkubLb みんながみんな大量のデータ集計や高度な集計をやるわけでは無いからPower Queryを必要とする人はいないと言われれば確かにそうですね。 だけどExcelで集計をすると言うのであればVBAでは無理です。 http://mevius.5ch.net/test/read.cgi/tech/1759297002/17
18: デフォルトの名無しさん [sage] 2025/10/05(日) 07:06:17.38 ID:MKhcYwCd VBAでも無理ではないでしょ ゴミのように書きにくく読みにくく遅いだけで http://mevius.5ch.net/test/read.cgi/tech/1759297002/18
19: デフォルトの名無しさん [sage] 2025/10/05(日) 07:10:15.40 ID:beeJ4mT2 Excel女子でもVBAで出来てるから「無理です」は言い過ぎ VBA女子ってのも居るそうだ https://exceljoshi.cocoo.co.jp/media/work-efficiency-vba-reporting 何であれ、事前の下拵え(前準備)がだいじだと説いてる その通りだけど具体例は有料っぽい まぁ、女子に頼らなくてもそこら中に転がってるけど https://note.com/bunsekiya_tech/n/n7da42fbfa7b4 http://mevius.5ch.net/test/read.cgi/tech/1759297002/19
20: デフォルトの名無しさん [sage] 2025/10/05(日) 07:40:58.07 ID:DpQo6Ojc VBAでやるときは各レコードをどこにどう書くかということをガチガチに固めておく必要があるのに対し、DBとかパワークエリだとそこら辺が抽象化できるイメージかなぁ。 http://mevius.5ch.net/test/read.cgi/tech/1759297002/20
21: デフォルトの名無しさん [] 2025/10/05(日) 07:58:20.71 ID:knUkubLb >>20 本当にそれなんですよ パワークエリーやSQLなら列同士の集計やグループバイ、Join、UnPivotができるけど、VBAでUnpivotは流石にキツい http://mevius.5ch.net/test/read.cgi/tech/1759297002/21
22: デフォルトの名無しさん [] 2025/10/05(日) 08:28:28.60 ID:Gl792nZh LET、XLOOKUP、FILTER、GROUPBYあたりを駆使すればワークシート関数でも結構いける わざわざ別アプリ起動してマイナー言語でとはならないかな・・・ http://mevius.5ch.net/test/read.cgi/tech/1759297002/22
23: デフォルトの名無しさん [sage] 2025/10/05(日) 08:39:23.86 ID:beeJ4mT2 それこそ事前の準備で済む話 いきなり大容量のデータに接続してあれこれしようとするから混乱する 結果から想定されるデータ群に仕様を整えておくのが先ず最初にすべきこと ADO が非推奨と成り果てたからVBA内でSQL使おうにも先細りなんだろうけど、まだやれない訳じゃ無いし(最新版じゃ無理なのか) 何であれ、いきなり野良データに接続してあんなことやこんなことしようとする方が無謀 データの事前整形はイロハのイ http://mevius.5ch.net/test/read.cgi/tech/1759297002/23
24: デフォルトの名無しさん [] 2025/10/05(日) 09:10:22.53 ID:knUkubLb >>23 その事前のデータ整形がパワークエリーなんですよ そもそもPower BIはパワークエリーとパワーピボットの二つが合わさった製品だし ADOが非推奨だとは知らなかったです やっぱりVBAはダメダメなんですね http://mevius.5ch.net/test/read.cgi/tech/1759297002/24
25: デフォルトの名無しさん [] 2025/10/05(日) 09:12:20.05 ID:knUkubLb >>22 GROUPBY関数は最近になってやっとM365だけで使える様になった引数の翻訳も終わっていない関数じゃ無いですか しかもGROUPBYに渡す元データのUnPivotはどうするんですか? UnPivot関数はありませんよ? http://mevius.5ch.net/test/read.cgi/tech/1759297002/25
26: デフォルトの名無しさん [] 2025/10/05(日) 09:18:37.32 ID:knUkubLb パワークエリーは let 変数名 = 関数 in ただこれだけです 各ステップ名にそれぞれの関数の戻り値(型)が代入されるだけです 一体どれだけ簡単なのかと 名前付きfunction関数なら (変数名 型) => let 変数名 = 関数 in ただこれだけ http://mevius.5ch.net/test/read.cgi/tech/1759297002/26
27: デフォルトの名無しさん [] 2025/10/05(日) 09:28:11.50 ID:knUkubLb 会社で本格的なデータベースを構築しているとか、サーバーが使える、あるいは業務にしているのならそりゃSQLを推奨しますよ しかし日本企業がそんなにITの導入をしているとは私はまったく思えません だから当然必然的にExcelの標準機能一択になるわけです 世の中の企業にはVBAを禁止している会社もあると聞きます だったら尚更パワークエリー あとSQLはETLではないからSQLにできないことも多い http://mevius.5ch.net/test/read.cgi/tech/1759297002/27
28: デフォルトの名無しさん [sage] 2025/10/05(日) 09:41:07.01 ID:beeJ4mT2 UnPivot て、Excelの原始的な機能で、貼り付け時に行/列入れ替え 貼り付けだけで済むんじゃないのか? そんな単純じゃない!もっともっと厳しいデータなんだ!ってことなのか? 取り込んだデータが行列逆だったら、真っ先にそれするもんじゃないのか? 基本のキ? http://mevius.5ch.net/test/read.cgi/tech/1759297002/28
29: デフォルトの名無しさん [] 2025/10/05(日) 09:51:23.22 ID:knUkubLb >>28 UnPivotと行列入れ替えは全くの別物ですよ 行列入れ替えは本当にただ 列 行 を 行 列 にするだけなんだけど、UnPivotは横持ちデータを縦持ちデータに変換する事を言います 例えば 1月2月3月4月5月〜 各エリア 〜 という表があればその各月のデータを エリア列|月列 とリスト表形式に整えてくれます これ無くして高度な集計はできません http://mevius.5ch.net/test/read.cgi/tech/1759297002/29
30: デフォルトの名無しさん [sage] 2025/10/05(日) 09:51:47.38 ID:beeJ4mT2 社内にサーバー(NAS含む)も仕立てていない企業が蓄えてる大容量のデータって いや、Power Query を否定するつもりは無いけど、今のExcelの標準の機能で殆ど賄えやしないか? ものっそ古いデータもあって、当時はデータの統一性もまばらで、セル内改行してるだの 文字の位置合わせにスペース使ってるだの、予想外のデータだったりすることもあるんだから イロハのイ、基本のキは守っておいて損は無いんだけど http://mevius.5ch.net/test/read.cgi/tech/1759297002/30
31: デフォルトの名無しさん [sage] 2025/10/05(日) 09:58:16.44 ID:QIz/HuGJ 自分はSQL派なので事前に定義されたテーブルにデータを入れておくという考え方の方になじみがあるけど、表っぽいデータなら大抵はうまい塩梅に整形できますぜということならパワークエリにもそれなりに活用場面は出てくると思う。ただ、クエリ部分をSQLからパワークエリに置き換えるのはちょっと躊躇を覚えるかな。標準規格があって、ペンダーが複数いるという安心感はかなり大きいので。 SQLを除いてExcelおよびその関連機能であるVBA、パワークエリだけで考えたときに、それぞれどういう長所・短所があるかというのはそれはそれで1つの議論ではあるね。 http://mevius.5ch.net/test/read.cgi/tech/1759297002/31
32: デフォルトの名無しさん [] 2025/10/05(日) 10:08:01.77 ID:knUkubLb なんでVBAで流石にUnPivot旬は難しいと言えるかと言うと、UnPivotする為にはそれぞれの項目とその数に応じて大量に行の挿入を行う必要があるからです これをVBAでやろうとすると行ズレ問題に頭を悩ませるし、セル操作、Rangeは非常に遅いし、2次配列の操作はVBAは非常に貧弱だからです 一応、パワークエリーが登場する前(本当はMicrosoft Queryという前身機能があったらしいですが)のVBAのまず最初にやる事はUnPivotだったらしいので、絶対にできないとは言いません しかし、パワークエリーならボタンぽちぽちで済む事を全部コードに書かなきゃならないので非常に面倒くさい上に不具合もあります サーバーがある、本物のSQLが使用できる環境があると言うのなら当然止めません 既に正規化されているデータだけを扱うと言うのであれば尚更でしょう しかし世の中その様なデータばかりを扱うとは到底思えません http://mevius.5ch.net/test/read.cgi/tech/1759297002/32
33: デフォルトの名無しさん [] 2025/10/05(日) 10:09:32.03 ID:knUkubLb >>31 表っぽいデータなら「大抵」ではなく、「全て」うまい塩梅に整形できますぜ です なぜならそれがETLだからです http://mevius.5ch.net/test/read.cgi/tech/1759297002/33
34: デフォルトの名無しさん [sage] 2025/10/05(日) 10:30:14.94 ID:beeJ4mT2 その「ボタンぽちぽち」で出来てしまう点を懸念してンだけどねw 野良データがガサツでも、ぽちぽちしたらちゃんとした表に仕上がりました! で、そのデータの 信ぴょう性とかファクトが担保されるのか?という面で、イとかキは疎かにしちゃいけない、と で、そのイとかキをしてる最中に「これとこれをこうすりゃこう仕上がる」という、データ加工の 手順や経緯や法則がきちんと把握できてく(それが判ればほぼほぼ基本機能で済むケースが多いのも現実) そういう基盤がキチンと制作者も受け取る側も共有出来てるなら、どんなアプリ使おうとも構わんけど 作る側がその辺ないがしろにして「この機能サイコー!」だけで盲信して得意満面に仕上げてきた表ほど 役に立たないものも無いってのも現実 まあ、老婆心だけだけどw http://mevius.5ch.net/test/read.cgi/tech/1759297002/34
35: デフォルトの名無しさん [sage] 2025/10/05(日) 10:50:37.84 ID:YF7wvbQm たぶん想定されている使われ方が結構違うんだろうね。 DBの場合、事前に設計されたテーブルを前提としているから、テーブル設計で失敗していない限りそもそもpivotとかunpivotとかが必要になる機会自体そんなにないと思うのよ。古いシステムからデータを取り込んだりするときくらいじゃない? だからpivot / unpivot の利便性をメリットとして挙げられてもあんまりピンと来ない感がある。 パワークエリの方は、どちらかというと表っぽいデータ(いわゆる野良データも含む)をアドホックに処理できることに重点を置いているんでしょう。そういう場面ならpivot / unpivot が簡単にできると便利というのは分かる。 >>34 イとかキって何だと思ったが、イロハのイとキホンのキか。34を読んだだけでこれに気付いたのって凄くない?w http://mevius.5ch.net/test/read.cgi/tech/1759297002/35
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 79 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.013s