Excel VBA 質問スレ Part83 (628レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
400(2): デフォルトの名無しさん [sage] 2025/07/15(火) 11:19:52.18 ID:IENqpxZQ(1/2) AAS
毎日夜中の定刻に、気象庁Webサイトの2つのページからcsv落として月次集計する、
マクロとPowerQuery使った2×2の4つのブックを
VBS(例:以下)とタスクスケジューラーを使ってやらせてるんだけど、
いい加減、VBS部分を乗り換えるとしたら、
何がとっつきやすいのかな?
PowerShell?
PowerAutomate?
Python?
---例:DLブックを実行させるVBS---
Const WB_PATH = "E:\集計\01_DLファイル\DLブック_地点A.xlsm"
Const PROC_NAME = "DL_Ref"
Dim excelApp
Set excelApp = CreateObject("Excel.Application")
With excelApp
.Visible = False
Dim wb
Set wb = .Workbooks.Open(WB_PATH)
.Run wb.Name & "!" & PROC_NAME
.DisplayAlerts = False
wb.Close
End With
excelApp.Quit
405(1): デフォルトの名無しさん [sage] 2025/07/15(火) 13:45:04.50 ID:IENqpxZQ(2/2) AAS
>>401,403401(1): デフォルトの名無しさん [sage] 2025/07/15(火) 11:31:18.20 ID:izh84eSC(1) AAS
>>400
**PowerShell**がおすすめです。
理由:
- VBSに最も近い書き方
- Excelの操作がそのまま使える
- Windowsに標準搭載
- 学習コストが低い
移行例:
```powershell
$excel = New-Object -ComObject Excel.Application
$excel.Visible = $false
$wb = $excel.Workbooks.Open("E:\集計\01_DLファイル\DLブック_地点A.xlsm")
$excel.Run("DL_Ref")
$wb.Close()
$excel.Quit()
```
PythonやPower Automateは学習コストか制約があるので、PowerShellが無難です。
403(1): デフォルトの名無しさん [sage] 2025/07/15(火) 11:52:00.35 ID:1v3q9PKm(2/2) AAS
PowerShellは遅くてびっくりするのと
COM(IDispatch)経由の操作なので基本的に書き方はvba/vbsを踏襲する
普通に使うと割とつまらない
ありがとう。やってみる。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.034s