Webサイトの表をExcelに貼り付けて整形できたのに、実体は「ダウンロード用ファイルのリンク一覧」だった——そんな場面は意外と多いです。リンクを1件ずつ開かずにまとめて取得し、さらに保存後のファイルサイズや更新日時までExcelで見える化するための、実務で使える手順をまとめます。
よくある状況:Excelに貼り付けたら「リンク一覧」だった
Webページの複数列テーブルをExcelに貼り付けると、見た目は「ファイル名」「種別」「更新日」などが並ぶ“一覧表”になります。しかし実際には、表の各行にあるファイル名がハイパーリンクになっていて、クリックしないと実体(URL)が分からないことがあります。
このとき多くの人が詰まるのが次の2点です。
- リンクを1件ずつクリックして保存するのは非現実的(大量だと特に)
- ダウンロード後、ローカルのファイルサイズや更新日時をExcelのセルで参照したいが、標準関数だけではうまくいかない
結論:現実的な解決ルートは「URL抽出 → 自動取得」+「属性は別ルートで取得」
まず押さえたいのは、Excelは「リンクを一覧で持つ」ことは得意でも、「Webから複数ファイルを安全に自動保存する」「OS上のファイル属性を関数だけで取る」といった用途は標準機能だけでは弱い、という点です。そこで次の組み合わせが現実的です。
| やりたいこと | おすすめ手段 | 強み | 注意点 |
|---|---|---|---|
| リンク先ファイルを一括ダウンロード | PowerShell(推奨) | ログ・再実行・エラー処理が強い/Excelから切り離せる | 認証が必要なサイトは追加対応が要る場合あり |
| Excelだけで一括ダウンロード | Excel VBA | Excel内で完結/ボタン1つで実行しやすい | マクロ制限・セキュリティ警告・環境差の影響を受けやすい |
| ローカルファイルのサイズ・更新日時などをExcelで参照 | VBAユーザー定義関数(UDF) | セル関数のように扱える | マクロ有効ブックが必要 |
| フォルダー配下のファイル属性を一覧化 | Power Query「フォルダーから」 | マクロ不要で属性一覧が作れる/更新が簡単 | “任意の1ファイルをセル参照で取得”よりは一覧向き |
最初の重要ステップ:ExcelのハイパーリンクからURLを取り出す
一括ダウンロードは「URLの列」を用意できれば、ほぼ勝ちです。問題は、貼り付けた表のセルが“見た目は文字列でも、URLはハイパーリンクとして埋まっている”ことがある点です。
リンクの入り方は主に3パターン
| パターン | Excel上の見え方 | 中身 | URLの取り出し方 |
|---|---|---|---|
| ハイパーリンク(オブジェクト) | 青文字+下線(または通常表示) | セル値とURLが別管理 | VBAで Range.Hyperlinks(1).Address |
| HYPERLINK関数 | 見た目はリンク | 数式にURLが含まれる | 数式文字列から抽出(やや面倒) |
| URLが文字列として入っている | https://〜 が見える | セル値そのものがURL | そのまま使える(最も簡単) |
方法A:VBAでURL列を作る(最も確実で再現性が高い)
貼り付けた表がハイパーリンク(オブジェクト)だった場合、手作業で「リンク先をコピー」して回るのは地獄です。ここはVBAでURLを抽出するのが最短です。
次のユーザー定義関数(UDF)を標準モジュールに貼り付けると、セルを引数にURLを文字列で返すようになります。
Option Explicit
'セルに設定されたハイパーリンクのURLを返す
'ハイパーリンクが無い場合はセルの値をそのまま返す(URL文字列が入っているケースを想定)
Public Function GetLinkAddress(ByVal target As Range) As Variant
On Error GoTo EH
If target Is Nothing Then
GetLinkAddress = ""
Exit Function
End If
If target.Hyperlinks.Count > 0 Then
GetLinkAddress = target.Hyperlinks(1).Address
Else
GetLinkAddress = target.Value
End If
Exit Function
EH:
GetLinkAddress = ""
End Function
使い方は簡単です。たとえばA列にリンク付きのファイル名があるなら、B2に次を入れて下へコピーします。
=GetLinkAddress(A2)
これでB列にURL一覧ができます。このURL列をCSVにしてPowerShellへ渡す、またはVBAでそのままループしてダウンロードする、という流れに持ち込めます。
方法B:URLが見えているなら“余計な加工をしない”
すでにセルにURL文字列が入っているなら、無理にVBAを使う必要はありません。むしろ加工しすぎると、URL末尾のクエリ文字列(?id=...)を壊してしまうことがあります。
- URLは原則として“そのまま”扱う
- 余計な全角化やトリムで壊さない(前後の空白除去はOK)
リンク先を一括ダウンロードする:PowerShellが現場で強い
「1つずつクリックしたくない」という悩みへの最適解は、URLリストを使ったスクリプトダウンロードです。特にPowerShellは、Windows環境に標準搭載されていることが多く、ログ出力・再実行・エラー処理がしやすいのがメリットです。
準備:ExcelのURL列をCSVにする
Excelで作ったURL列(例:B列)を次の形式でCSVにします。
| 列名 | 例 | 意味 |
|---|---|---|
| Url | https://example.com/files/report.xlsx | ダウンロード元のURL |
| FileName(任意) | report_2026-01.xlsx | 保存ファイル名を指定したい場合 |
ポイントは、列名(ヘッダー)を入れることです。PowerShell側で扱いやすくなります。
基本スクリプト:URLを順番に保存し、ログも残す
以下は、CSVのUrl列を読み込み、指定フォルダーへ順次ダウンロードする例です。既に同名ファイルが存在する場合は連番を付けて退避し、結果ログ(成功/失敗、保存先、サイズ)もCSVで出力します。
# 1) 設定
$csvPath = "C:\work\links.csv" # Excelから保存したCSV
$destDir = "C:\work\downloads" # 保存先フォルダー
$logPath = Join-Path $destDir "download_log.csv"
$delayMs = 500 # アクセス間隔(ミリ秒)。負荷配慮で適宜調整
# 2) 保存先フォルダー作成
New-Item -ItemType Directory -Force -Path $destDir | Out-Null
# 3) ファイル名に使えない文字を置換する関数
function Convert-ToSafeFileName {
param([Parameter(Mandatory=$true)][string]$Name)
$invalid = [System.IO.Path]::GetInvalidFileNameChars()
foreach ($ch in $invalid) {
$Name = $Name.Replace($ch, "_")
}
return $Name
}
# 4) 同名があれば連番を付ける関数
function Get-UniquePath {
param(
[Parameter(Mandatory=$true)][string]$Path
)
if (-not (Test-Path $Path)) { return $Path }
$dir = Split-Path -Path $Path -Parent
$base = [System.IO.Path]::GetFileNameWithoutExtension($Path)
$ext = [System.IO.Path]::GetExtension($Path)
$i = 2
while ($true) {
$candidate = Join-Path $dir ("{0}_{1}{2}" -f $base, $i, $ext)
if (-not (Test-Path $candidate)) { return $candidate }
$i++
}
}
# 5) CSV読み込み
$rows = Import-Csv -Path $csvPath
$results = New-Object System.Collections.Generic.List[object]
foreach ($row in $rows) {
$url = ($row.Url + "").Trim()
if ([string]::IsNullOrWhiteSpace($url)) { continue }
try {
$uri = [Uri]$url
# 保存ファイル名の決定(CSVにFileName列があれば優先)
$nameFromCsv = ($row.FileName + "").Trim()
if (-not [string]::IsNullOrWhiteSpace($nameFromCsv)) {
$fileName = Convert-ToSafeFileName -Name $nameFromCsv
}
else {
# URL末尾から推定(末尾が空ならGUID)
$leaf = [System.IO.Path]::GetFileName($uri.AbsolutePath)
if ([string]::IsNullOrWhiteSpace($leaf)) {
$leaf = ([Guid]::NewGuid().ToString() + ".bin")
}
$fileName = Convert-ToSafeFileName -Name ([Uri]::UnescapeDataString($leaf))
}
$outPath = Join-Path $destDir $fileName
$outPath = Get-UniquePath -Path $outPath
# ダウンロード
Invoke-WebRequest -Uri $uri -OutFile $outPath -MaximumRedirection 5 -ErrorAction Stop
$bytes = (Get-Item $outPath).Length
$results.Add([pscustomobject]@{
Url = $url
Status = "OK"
SavePath = $outPath
Bytes = $bytes
Message = ""
Time = (Get-Date)
}) | Out-Null
}
catch {
$results.Add([pscustomobject]@{
Url = $url
Status = "NG"
SavePath = ""
Bytes = 0
Message = ($_.Exception.Message)
Time = (Get-Date)
}) | Out-Null
}
Start-Sleep -Milliseconds $delayMs
}
# 6) 結果ログ出力(UTF-8)
$results | Export-Csv -Path $logPath -NoTypeInformation -Encoding UTF8
このスクリプトの実務ポイントは次の通りです。
- ログを残す:失敗URLだけ再実行、などの運用ができるようになります。
- 保存先の衝突に強い:同名があり得るリンク一覧でも安全に保存できます。
- アクセス間隔を空ける:短時間に大量アクセスすると、サイト側でブロックされたり、相手に迷惑をかけたりします。
ファイル名がURL末尾と一致しないケースへの対処
URL末尾が「download?id=123」のような形式だと、URLからファイル名が推定できません。こうしたケースでは次の対応が現実的です。
| 状況 | 症状 | 現実的な対処 |
|---|---|---|
| URLにファイル名が含まれない | 保存名が.binやGUIDになりがち | Excel側に「保存名」列を作り、CSVのFileNameとして渡す |
| 同じURLでも都度違うファイルが返る | 上書き事故が起きる | ファイル名に日付や連番を含める運用にする |
| リダイレクトが多い | 取得できない/別ページを保存してしまう | -MaximumRedirection を増やす、URL自体を見直す |
よくあるエラーと切り分け
| 現象 | 原因の例 | 対処の方向性 |
|---|---|---|
| 403(Forbidden)っぽい | ログイン必須/User-Agent制限/直リンク禁止 | 権限確認、正規のダウンロード手順(APIや共有リンク)に切り替える |
| ファイルではなくHTMLが保存される | 実はダウンロードページのURLだった | ブラウザでネットワークログを見て“実ファイルURL”を取得する |
| 途中で失敗する(タイムアウト) | 回線/サーバー負荷/大容量 | アクセス間隔を増やす、再実行できるログ運用にする |
| ファイル名が文字化けする | URLエンコード/日本語ファイル名 | URL末尾をUnescapeする、Excel側で保存名を指定する |
大量ダウンロード時の“実務マナー”
技術的にできても、やり方を間違えるとサイト側に迷惑がかかります。最低限、次の配慮を入れてください。
- 短時間に大量アクセスしない(間隔を空ける/夜間に実行する等)
- 利用規約・社内ルールに従う(自動取得が禁止されているサイトもあります)
- 認証が必要なコンテンツは、正規の手段(共有設定、公式API、管理者の許可)を優先する
Excelだけで一括ダウンロードしたい:VBAで回す方法
「PowerShellを使えない」「どうしてもExcelのボタンで完結したい」場合は、VBAでURLを順番に保存する方法があります。ただし、マクロ制限や環境依存が出やすい点は理解しておきましょう。
最小構成:URLDownloadToFileで保存する
以下は、B列にURL、C列に保存結果(OK/NG)を出す例です。保存先フォルダーはダイアログで選びます。
Option Explicit
#If VBA7 Then
Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" ( _
ByVal pCaller As LongPtr, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As LongPtr _
) As Long
#Else
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" ( _
ByVal pCaller As Long, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long _
) As Long
#End If
Private Function PickFolder() As String
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
fd.Title = "保存先フォルダーを選択してください"
If fd.Show = -1 Then
PickFolder = fd.SelectedItems(1)
Else
PickFolder = ""
End If
End Function
Private Function SafeFileName(ByVal s As String) As String
Dim bad As Variant, i As Long
bad = Array("\", "/", ":", "*", "?", """", "<", ">", "|")
For i = LBound(bad) To UBound(bad)
s = Replace(s, CStr(bad(i)), "_")
Next i
SafeFileName = s
End Function
Private Function FileNameFromUrl(ByVal url As String) As String
Dim p As Long, leaf As String
p = InStrRev(url, "/")
If p > 0 Then
leaf = Mid$(url, p + 1)
Else
leaf = url
End If
If Len(leaf) = 0 Then leaf = Format(Now, "yyyymmdd_hhnnss") & ".bin"
FileNameFromUrl = SafeFileName(leaf)
End Function
Public Sub BatchDownloadFromUrls()
Dim folder As String
folder = PickFolder()
If Len(folder) = 0 Then Exit Sub
Dim ws As Worksheet
Set ws = ActiveSheet
Dim lastRow As Long
lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row
Dim r As Long
Dim url As String, savePath As String, fileName As String
Dim rc As Long
Application.ScreenUpdating = False
Application.StatusBar = "ダウンロードを開始します..."
For r = 2 To lastRow
url = Trim$(ws.Cells(r, "B").Value)
If Len(url) > 0 Then
fileName = FileNameFromUrl(url)
savePath = folder & "\" & fileName
rc = URLDownloadToFile(0, url, savePath, 0, 0)
If rc = 0 Then
ws.Cells(r, "C").Value = "OK"
ws.Cells(r, "D").Value = savePath
Else
ws.Cells(r, "C").Value = "NG(" & rc & ")"
ws.Cells(r, "D").Value = ""
End If
End If
DoEvents
Application.StatusBar = "処理中: " & (r - 1) & " / " & (lastRow - 1)
Application.Wait Now + TimeSerial(0, 0, 1) 'アクセス間隔
Next r
Application.StatusBar = False
Application.ScreenUpdating = True
End Sub
VBA方式の注意点は次の通りです。
- サイト側が直リンクを嫌う場合、取得に失敗しやすい(403など)
- プロキシや証明書、社内セキュリティ設定の影響を受けやすい
- 大量件数だとExcelが重くなるため、ログを別シートにする、途中再開できる設計にする等の工夫が必要
ローカルファイル属性をExcelで参照する:標準関数だけでは難しい理由
Excelの標準関数は、基本的に「セルの値」や「ブック内データ」を対象に計算します。OSのファイルシステムにアクセスして、任意パスのサイズ・更新日時を返す関数は標準では用意されていません。
そのため、次のどれかを選ぶことになります。
- VBAのユーザー定義関数(UDF)で取得する
- Power Queryでフォルダー一覧として取り込む
- PowerShell等で属性を収集してCSV化し、Excelで読み込む
VBAで「ファイルサイズ」「更新日時」をセル関数のように使う
ここでは、最も要望が多い「ファイルサイズ(バイト)」と「最終更新日時」を返すUDF例を紹介します。いずれも、パスが存在しない場合はエラー値を返し、Excelの数式として扱いやすくします。
基本:FileLenとFileDateTimeを使う
Option Explicit
'ファイルサイズ(バイト)を返す
Public Function FileSizeBytes(ByVal filePath As String) As Variant
On Error GoTo EH
If Len(Trim$(filePath)) = 0 Then
FileSizeBytes = CVErr(xlErrNA)
Exit Function
End If
If Len(Dir$(filePath, vbNormal)) = 0 Then
FileSizeBytes = CVErr(xlErrNA)
Exit Function
End If
FileSizeBytes = FileLen(filePath)
Exit Function
EH:
FileSizeBytes = CVErr(xlErrValue)
End Function
'最終更新日時を返す
Public Function FileModifiedAt(ByVal filePath As String) As Variant
On Error GoTo EH
If Len(Trim$(filePath)) = 0 Then
FileModifiedAt = CVErr(xlErrNA)
Exit Function
End If
If Len(Dir$(filePath, vbNormal)) = 0 Then
FileModifiedAt = CVErr(xlErrNA)
Exit Function
End If
FileModifiedAt = FileDateTime(filePath)
Exit Function
EH:
FileModifiedAt = CVErr(xlErrValue)
End Function
'バイト数を読みやすい表示に整形(例:12.3 MB)
Public Function FormatBytes(ByVal bytesValue As Variant) As Variant
On Error GoTo EH
If IsError(bytesValue) Then
FormatBytes = bytesValue
Exit Function
End If
Dim d As Double
d = CDbl(bytesValue)
If d < 1024 Then
FormatBytes = Format(d, "0") & " B"
Exit Function
End If
d = d / 1024
If d < 1024 Then
FormatBytes = Format(d, "0.0") & " KB"
Exit Function
End If
d = d / 1024
If d < 1024 Then
FormatBytes = Format(d, "0.0") & " MB"
Exit Function
End If
d = d / 1024
FormatBytes = Format(d, "0.0") & " GB"
Exit Function
EH:
FormatBytes = CVErr(xlErrValue)
End Function
シート上では次のように使えます。
- A2にフルパスが入っている場合:
=FileSizeBytes(A2) - 読みやすい表示:
=FormatBytes(FileSizeBytes(A2)) - 更新日時:
=FileModifiedAt(A2)
注意:FileLenは大容量ファイルでオーバーフローする場合がある
環境や対象ファイルによっては、数GB級のファイルでFileLenが扱える範囲を超えてエラーになることがあります。大容量ファイルも扱う可能性があるなら、Windows APIを使って64bitで取得する方法を用意しておくと安心です(上級者向け)。
上級:64bitサイズを取得する(Windows API)
次は、64bit相当のファイルサイズを取得して返す例です。戻り値は数値(バイト)です。
Option Explicit
#If VBA7 Then
Private Declare PtrSafe Function CreateFile Lib "kernel32" Alias "CreateFileA" ( _
ByVal lpFileName As String, _
ByVal dwDesiredAccess As Long, _
ByVal dwShareMode As Long, _
ByVal lpSecurityAttributes As LongPtr, _
ByVal dwCreationDisposition As Long, _
ByVal dwFlagsAndAttributes As Long, _
ByVal hTemplateFile As LongPtr _
) As LongPtr
Private Declare PtrSafe Function GetFileSizeEx Lib "kernel32" ( _
ByVal hFile As LongPtr, _
ByRef lpFileSize As Currency _
) As Long
Private Declare PtrSafe Function CloseHandle Lib "kernel32" ( _
ByVal hObject As LongPtr _
) As Long
#Else
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" ( _
ByVal lpFileName As String, _
ByVal dwDesiredAccess As Long, _
ByVal dwShareMode As Long, _
ByVal lpSecurityAttributes As Long, _
ByVal dwCreationDisposition As Long, _
ByVal dwFlagsAndAttributes As Long, _
ByVal hTemplateFile As Long _
) As Long
Private Declare Function GetFileSizeEx Lib "kernel32" ( _
ByVal hFile As Long, _
ByRef lpFileSize As Currency _
) As Long
Private Declare Function CloseHandle Lib "kernel32" ( _
ByVal hObject As Long _
) As Long
#End If
Public Function FileSizeBytes64(ByVal filePath As String) As Variant
On Error GoTo EH
Const GENERIC_READ As Long = &H80000000
Const FILE_SHARE_READ As Long = &H1
Const FILE_SHARE_WRITE As Long = &H2
Const FILE_SHARE_DELETE As Long = &H4
Const OPEN_EXISTING As Long = 3
Const FILE_ATTRIBUTE_NORMAL As Long = &H80
If Len(Trim$(filePath)) = 0 Then
FileSizeBytes64 = CVErr(xlErrNA)
Exit Function
End If
If Len(Dir$(filePath, vbNormal)) = 0 Then
FileSizeBytes64 = CVErr(xlErrNA)
Exit Function
End If
Dim h As LongPtr
Dim sz As Currency
Dim ok As Long
h = CreateFile(filePath, GENERIC_READ, FILE_SHARE_READ Or FILE_SHARE_WRITE Or FILE_SHARE_DELETE, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0)
'CreateFile失敗時は -1 相当になることが多い
If h = -1 Then
FileSizeBytes64 = CVErr(xlErrValue)
Exit Function
End If
ok = GetFileSizeEx(h, sz)
CloseHandle h
If ok = 0 Then
FileSizeBytes64 = CVErr(xlErrValue)
Exit Function
End If
'Currencyは内部的に1/10000単位の64bit整数なので補正
FileSizeBytes64 = sz * 10000
Exit Function
EH:
On Error Resume Next
If h <> 0 Then CloseHandle h
FileSizeBytes64 = CVErr(xlErrValue)
End Function
「通常はFileSizeBytesで十分、たまに大容量が混じる」なら、列を分けるのではなく、次のように“64bit版をデフォルト”にしても良いでしょう。
=FormatBytes(FileSizeBytes64(A2))
マクロなしで属性一覧を作りたい:Power Query「フォルダーから」が安定
「ファイルサイズや更新日時を取りたい」だけなら、Power Queryの“フォルダーから”取り込みが非常に強力です。特に、同一フォルダー配下のファイルをまとめて一覧化する用途に向きます。
Power Queryでできること
- 指定フォルダー内のファイル名、拡張子、サイズ、更新日時、作成日時などを一覧化
- フィルター(拡張子がxlsxだけ、など)や列追加がGUIで可能
- 「更新」ボタンで再取得でき、運用が楽
手順の流れ(Windows版Excelを想定)
- Excelの「データ」タブ → 「データの取得」
- 「ファイルから」→「フォルダーから」
- 対象フォルダーを選択
- プレビューで「変換データ」を選択(必要なら)
- 列(Name/Extension/Date modified/Size/Folder Pathなど)を整えて読み込み
リンクからダウンロードしたファイルを1つのフォルダーに集約しておけば、Power Queryで属性が一瞬で“台帳化”できます。ExcelのセルにUDFで1件ずつ参照するより、一覧で管理したい現場ではこちらのほうが管理しやすいことが多いです。
実務でのおすすめ構成:迷ったらこの組み合わせ
要件別に、現場でトラブルが少ない構成をまとめます。
| 状況 | おすすめ | 理由 |
|---|---|---|
| リンクが大量/失敗したURLだけやり直したい | URL抽出(VBA)+一括DL(PowerShell)+ログ運用 | 再実行に強く、Excelが固まりにくい |
| 社内ルールでPowerShellが使いづらい | Excel VBAで一括DL(小〜中規模) | Excel内で完結しやすい |
| ダウンロード後の属性を一覧で管理したい | ダウンロード先を1フォルダーに統一+Power Query | マクロ不要で更新が簡単、保守しやすい |
| シートで「このパスのサイズ」を関数っぽく見たい | VBA UDF(FileLen / API) | Excel内の参照が自然になる |
リンク一覧 → 一括取得 → 属性確認までの“流れ”の例
最後に、最短で回る手順例をまとめます。初めて整備する場合でも、この順番で進めると迷いにくいです。
- Web表をExcelに貼り付け、必要な列だけ残す(ファイル名、カテゴリ等)
- リンクセルの隣に
=GetLinkAddress(A2)でURL列を作る - URL列(+必要なら保存名列)をCSVで保存する
- PowerShellでCSVを読み込み、指定フォルダーへ一括ダウンロードする(ログ出力)
- 保存先フォルダーをPower Query「フォルダーから」で取り込み、サイズ・更新日時を台帳化する
- (必要なら)Excelシート上でUDFを使い、任意パスのサイズを参照する
見落としがちな注意点:利用規約・認証・負荷
一括ダウンロードは便利な反面、運用を誤ると問題になりやすい領域です。特に次の点は、事前に確認しておくと安心です。
- サイト利用規約:自動取得が禁止のサービスもあります。
- 認証:ログインが必要なリンクは、単純なURL取得では弾かれることがあります(正規の共有リンク、API、管理者の許可が必要な場合あり)。
- 負荷:短時間に大量アクセスすると、相手側のシステム負荷やアクセス制限の原因になります。
まとめ:Excelは「URLを整える場所」、取得と属性は“得意な道具”に任せる
Excelに貼り付けた「ダウンロード用リンク一覧」から効率よく処理するコツは、役割分担です。
- Excel:リンク一覧の整形と、URL列の抽出(必要なら保存名も作る)
- PowerShell(またはVBA):URLをループして一括ダウンロード(ログを残す)
- VBA UDF/Power Query:ローカルファイル属性を取得して見える化
この流れに乗せるだけで、「1件ずつクリック」「ファイルサイズを目視で確認」といった作業はほぼ不要になります。最初に仕組みを作ってしまえば、次回以降はURLを貼り付けて更新するだけで回るようになります。

コメント