[過去ログ] Excel VBA 質問スレ Part82 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
70(6): 02/07(金)10:52 ID:5nqX8k30(1/4)調 AAS
>>66
「ポンチ絵」じゃ霞ヶ関のパワポ芸を連想させてしまって、伝わらないか・・・
例えば、そのnoteの3枚目のパワポ事例の右肩に、簡単な円グラフと棒グラフがあるけど、
Accessでできるグラフって、この程度(=パワポレベル)でね?
過去にAccessでやりかけたものの一つは、
2016年から公開されている系統電力エリア需給実績データで、
グラフ機能がショボくて諦めた。
せっかく細かくデカいデータを、いろいろ繋げたり加工はできるのに。
(実は、ファイル容量上限2GBもネックだったりする・・・)
で、今、Excelで、bookもクエリーもVBAで多段処理して
ヒイヒイ言いながらなんとか作っている、お恥ずかしいグラフは、こんなの。
i.imgur.com/Ossd2O9.png
ChatGPTに相談したら、Power BIどころか、
これはこれでもう、OracleかSQLかなんかでサーバー立てて、
htmlゴリゴリ書いてWeb共有したら?
と言われる始末。
71: 02/07(金)16:21 ID:KDvERFpc(2/3)調 AAS
>>70
2GBの壁はテーブルを切り出せばいい
1テーブルならSQLサバ無料で
72: 02/07(金)17:44 ID:KDvERFpc(3/3)調 AAS
>>70
グラフ凄いな
全体構造はわからんけど、オレが作るなら
データ取得とデータ提供クエリーをaccess側で
EXCELはaccessからデータもらって画像のように出力
かな
EXCEL側から全部できるようにしとくと便利だけど、密結合(イメージ)すぎると他に流用しにくくなる
例えば別形式のグラフ出そうとして別EXCELファイル作ると、そちらにもデータ取得処理が必要になるとか、データ取得のために画像のEXCEL起動が必要とか
accessでデータ取得にしとくと、スター型みたいに複数EXCELやワード、パワポにデータ提供しやすい
まあ、理想通りにいかないことも多々あるんですけどw
73: 70 02/07(金)20:11 ID:5nqX8k30(2/4)調 AAS
他の人の参考になるとは思えんけど、拙いこの集計の概略を晒すと、
1. 10のWebサイトから毎月csvファイルをDL(当月分はリアルタイム集計したいため、随時クエリーで読むだけ)
2. 一部電源の正負値分離、小計、当月最大/最小計算
3. 50Hz連系、60Hz連系、10エリア計で時間帯串刺し計算
4. 過去遡及補正があるので、過去月は最新版計算
5. 電源別の過去月最大/最小・日時計算、全期間最大/最小・日時計算
6. 電源別にMW30分平均値から月別・年別MWh計算(MW値÷2)
7. 時間コマ欠落計算
これらをエリア別年度別に1book化(30分値48コマ/時×365日=17,520行/年)
DLはクエリーのリストを元にVBAで、クエリーでscv読込み・加工、クエリーのシーケンシャルな更新はVBAで、
といった使い方。
グラフ集計bookは、本当は2016/4から現在まで一気通貫でやりたかったけど、
当月分はリアルタイムにしたいためにWebデータを読むだけにしたので、
後段の計算量が増えてしまい、
結局、「当月分グラフ」と「先月までグラフ」で、bookを分けた。
後者は17,520行×13地点×9年分=2,049,840行を全て読み込まないと、
フィルターでエリアや年月の切り替えのたびに、外のbookを読み込みに行って時間が掛かりすぎた。
当然ワークシートではなく、Power Pivotのデータモデルに格納。
欠測があるので、このグラフ集計bookでは別途30分カレンダークエリーを作って、
需要が落ちる祝日情報も取り込み、
読み込んだデータをマージして、ピボットテーブルでグラフ用集計。
74(1): 70 02/07(金)20:23 ID:5nqX8k30(3/4)調 AAS
2016年から作り始めて、その間、
元のcsvデータが間違ってた(時間コマを飛ばしたりズレていた)とか、
2018年9月に北海道胆振東部地震でエリア全域ブラックアウトになり、
その期間を最大最小計算から外す細工が必要になったとか。
2024年度は途中でエリアバラバラで、
1時間平均MW値が30分平均値化。過去遡及して30分値化するとか、
火力一本だったのが燃料別に4つに分かれるとか、蓄電池が追加されるとか、
勝手に項目を追加する一般送配電事業者が出てくるとか。
一送各社Webサイトで当日分だけグラフ表示するようになったけど、
正の領域しか表示せず、揚水動力、連系線出、再エネ抑制といった調整力はわからないまま。
インタラクティブに過去のグラフは表示しない。
いろいろあって、結局Excelで、やっとの思いで今のリアルタイム集計になりまして。
Power BIでは積上げ棒を透過させたり、上下に2段3段と並べて連動するグラフは作れなかった。
1時間平均値の時には気象データも連携させていた。
別途再エネ接続量データを連携させて、設備利用率も出したいけれど、
もうExcelでは限界かなぁ・・・と。
76: 70 02/07(金)20:46 ID:5nqX8k30(4/4)調 AAS
Pythonは、クエリーでこの程度の加工計算なら、Power Queryで済んでしまう。
Webからスクレイピングするとき、CSSには強いが、今のところPower Queryで困っていない。
速いかどうかは知らん。
Rは、学術的に正確な統計計算とそのグラフに強い。
正規分布でない風速をポアソン分布やガンマ分布で解析、出現予測するとか、
気温と需要の関係を解析するようになったら必要だろうけど、
自分はそこまで至っていない。
せいぜい、気温の1時間平均値を標準偏差×±2か箱ひげ図で外れ値判断するとか、
需要の増加や火力最大値の減少を近似直線で傾向把握する程度だったら、
これもExcelで済んでしまう。
どっちも前処理は、何らかのカタチでExcelでやる必要があるのかな?
とも。
78(2): 02/08(土)18:14 ID:YOnQ5wlc(1)調 AAS
>70 から書いてきたことを自分で読み返してみて、
改めて注意喚起しておかなきゃならないと思ったのは、
このケースはあくまで、
「入力が既にcsvなどでデータ化されている場合」。
これが手入力データからスタートの場合は、
Power Queryでは、過去データに応じて入力フォームを設定するのは難しい。
クエリー更新かけると入力欄も簡単にチャラにされてしまうので。
項目と空の入力欄のテーブルをクエリーで用意するのは出来ても
(このクエリーテーブルをVBAのフォームと組み合わせるのも含めて)、
手入力後のテーブルを「ワークシートの範囲」として別クエリー名で読み取って
そのたびにVBA使って「一時DB」としてバックアップ転記・追記しておくとか。
しかもバージョン管理が必要。
こんな使い方はPower Queryでは想定していない。
グラフなどのバックエンドはさておき、
このあたりのフロントエンドは
Accessなどのデータベースソフトとか、ゴリゴリhtmlのWeb入力の方がよろしいのかしら?
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.044s