iT邦幫忙

0

EXCEL 的資料自動更新, 關檔案時可不可以自動更新

  • 分享至 

  • xImage

如果EXCEL 透過 工具列 : 資料-->從 WEB -->抓取某銀行的匯率資料

因為銀行是每幾分鐘更新一次 , 就算我在EXCEL設定每3分鐘更新一次

但是我只要把 EXCEL 檔案關閉 , 就不會更新了

有沒辦法EXCEL 檔案關閉時 , 還自動更新

(因為我每五分鐘,會將EXCEL的更新資料傳到資料庫,但是 EXCEL不可能一直開著)

這是將匯率資料匯入DB比較簡單的方法

===========================================================

感謝很多人的回覆
感覺很多人的回覆都有命中我要的答案
因為我是新手,還沒有權限回覆問題
先在這裡說明
基本目標: 每天下午4點半後抓取某銀行的匯率資料,匯入資料庫
目前要抓的是 一銀
https://ibank.firstbank.com.tw/NetBank/7/0201.html?sh=none

我的問題說每五分鐘,其實只要每天抓一次就可以了
每天匯率到下午4點就不會更新了
所以只要每天下午4點後去抓資料就可以了
基本上,我會往EXCEL關閉檔案的作法 (因為一直開著 , 不是好的選擇)

所以基本動作是

  1. 每天下午5點打開EXCEL
  2. 等待10分鐘,讓EXCEL自動更新
  3. 透過微軟 SSIS的工具 , 抓取EXCEL的檔案 匯入 資料庫
  4. 關閉EXCEL檔案

以上可透過 MS SQL Agent 設定排程執行 以上1,2,3,4

如果大家有更好多作法(不需要EXCEL也可以),歡迎提供,如果有更詳細細節更好

關於Python我知道可以爬蟲,但因為沒寫過,可能會研究比較久
總之大家提供的意見都是很好的方向

「有沒辦法EXCEL 檔案關閉時 , 還自動更新」
這個.......電視機關掉了,還能看電視的觀念嘛??
我想,答案因該不需要再說了吧。

一般你只能往不會被關閉的做法。提示你「計劃任務」
slime iT邦大師 1 級 ‧ 2019-11-28 09:13:25 檢舉
試試 Google Apps Script 自動雲端抓?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
2
小魚
iT邦大師 1 級 ‧ 2019-11-28 09:05:10

那就不要用Excel,寫個 Windows service

2
froce
iT邦大師 1 級 ‧ 2019-11-28 09:12:33

建議用python寫爬蟲,然後用windows排程器來做排程...
用excel寫當然excel要開啊...

0
阿展展展
iT邦好手 1 級 ‧ 2019-11-28 09:15:16

你要用什麼語言寫0.0

0
海綿寶寶
iT邦大神 1 級 ‧ 2019-11-28 09:20:06

大家都在猜樓主在做什麼

我猜的是這句

因為我每五分鐘,會將EXCEL的更新資料傳到資料庫,

如果樓主是因為「要讀 Excel 檔案,所以得關掉 Excel」的話
我的答案是

1.Excel開著抓匯率
2.[增加](Excel)程式把匯率「另存成 csv/txt 檔案」
3.[修改]原「上傳Excel」的檔案改為上傳「csv/txt」檔案

選我正解

我原本不會算命的 直到我接觸到邦幫忙.../images/emoticon/emoticon46.gif

0

去試試dos的curl命令

curl https://ibank.firstbank.com.tw/NetBank/7/0201.html?sh=none >%date%.html

再搭配計劃任務將檔案讀取下來。
這樣網頁就是你的每天抓取的數據。

你的excel就單純去應用這些數據就好。不要再開啟抓了。
將抓取跟讀取動作分開就好了。

基本上是考量你可能對程式不熟。要不然正常的做法最好還是用程式碼抓取分析資料完成後。直接放資料庫是最好的做法。當然輸出成json或是csv格式給excel也是一種做法。

找一種你會做的吧。我只是提個建議。

0
咖咖拉
iT邦好手 1 級 ‧ 2019-11-28 11:18:11

那就不要關檔案把資料寫在GOOGLE試算表
比較單純一點

下次要開就開網頁

1
paicheng0111
iT邦大師 5 級 ‧ 2019-11-28 19:04:17

把EXCEL的VBA轉成VBS,再搭配windows排程器。

我要發表回答

立即登入回答