標題:
不好意思,求教於各方高手...
[打印本頁]
作者:
verify9k
時間:
2019-12-10 09:23
標題:
不好意思,求教於各方高手...
各位高手您們好:
小弟關於底下的程式碼有兩個問題已困擾很久,始終得不到解答,能否請高手們解答一下 ??
Sub Goodinfo()
'*******************************************************************************************
'問題 1 **********************
Sheets("計算機表格").Select '切換到 防禦表格,並開始下載資料
Sheets("EPS表格").Select
Columns("Z:CZ").Select
Selection.Clear '清空 防禦表格中的 舊的財報資料
Sheets("防禦表格").Select
Columns("Z:CZ").Select
Selection.Clear '清空 防禦表格中的 舊的財報資料,
'然後,從 防禦表格開始下載新的財報資料
'*******************************************************************************************
Sheets("計算機表格").Select '切換到 防禦表格,並開始下載資料
公司代號 = 8086
季度代號 = 20151
'問題 2 *****************
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;https://www.moneydj.com/z/zc/zc30.djhtm?b=Y&a=" _
& 公司代號, Destination:=Range("$Z$100"))
"URL;https://goodinfo.tw/StockInfo/StockFinDetail.asp?
RPT_CAT=BS%5FM%5FQUAR&STOCK_ID=" _
公司代號 & "QRY_TIME=" 季度代號, Destination:=Range("$Z$100"))
"URL:https://goodinfo.tw/StockInfo/StockFinDetail.asp?
RPT_CAT=BS%5FM%5FQUAR&STOCK_ID="
2330&QRY_TIME=20171, Destination:=Range("$Z$100"))
.Name = "zc3a0_" & 公司代號 & ".djhtm"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
問題 1: 此段程式碼是使用 "錄製巨集"的方式照抄下來的,但發覺舊資料清不乾淨,
每次 Download,都會使檔案越來越大,執行速度越來越慢,甚至到達誇張的程度,
我個人認為是 clear指令只清除 "cell內容"而沒有清除 "cell格式",而且 "cell格式"會
累加,導致檔案隨著Download次數增加而越來越大,但是,這只是我的猜測,我不知真正
原因,也找不到解決方法.
我之所以會做此一猜測,是因為使用手動清除內容是可以完美的清潔乾淨,檔案大小
不會隨Download次數而累加,但是用錄製聚集的方式得到的程式碼就清不乾淨.
問題 2: 這三段 網址Download 只有第一段是正常可以使用的(moneydj),其餘兩段 URL
都是錯誤的,當然,他們的網址不同,但是其實也只是我想要歷史資料,所以必須換網址
來引入 "季度代號"此一變數,moneydj本身沒有歷史資料可以使用,我想請問,
第二段URL與第三段URL我錯在哪裡??尤其是第二段與第三段其實只是沒變數化而已,
應該是一模一樣的.
謝謝各位高手的幫忙!!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)