(不定期更新)使用VBA解決 excel web 查詢無法匯入、匯入太慢的股市資料

以解決
11151515151511515155151
以解決
11151515151511515155151
現在嘗試寫入模組裡
還請大大幫忙看是哪裡有問題!謝謝


Sub 測試()
With ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", _
Link:=False, DisplayAsIcon:=False, Left:=50, Top:=80, Width:=100, _
Height:=15)
End With
Call Form_load
End Sub

Public Sub Form_load() '下拉選單設定
Dim i As Integer
With ComboBox1
For i = 1 To 12
.AddItem (i)
Next
End With
End Sub




(在模組裡)
sub測試,加入一個combobox
接著套用form_load給予的格式
目前無法讀取到form_load裡面的combobox1

我是可以在sub測試裡面加上
with .object
end with
然後把combobox1的格式打進去
問題是這樣,其他的副程式就沒辦法引用combobox1

因為我本身有好幾個副程式,call來call去的
沒辦法引用combobox1 combobox2 整個就沒辦法執行了

求指點




bioleon69 wrote:
With ActiveSheet.OLEObjects.Add(ClassType:="Forms.Combo...(恕刪)

請勿跳級太多
這才是比較適合您的方法



snare wrote:
請勿跳級太多這才是比...(恕刪)


感謝大大指導,拖大大的系列教學
小弟也被您教到摸索出來了

但,這部分問題是
要先"手動"在工作表加入activeX
沒有辦法在空白頁面,模組一按就立即執行
(我就是這樣弄的,所以程式碼寫不進去模組)
--------------------------------

想弄成模組是想做成增益集
是看過有人的excel,弄成增益集
居然還可以線上更新
(excel視窗的界面都是他設定的按鈕,不是什麼 常用/插入/版面設置那些的)

而且作者如果有更新的話,那個excel點一下還可以自己更新...(誇張)
(哪像我新手,每次更新完就丟檔案出去)
另外,想看作者的程式碼還沒辦法看,有用密碼鎖住
是想朝這個方向邁進
目前還不敢想,太高端了..
會下載網路資料就偷笑了

但,寫入模組,轉成增益集似乎還是沒有保護到的樣子


似乎特別研究這一塊好像也沒什麼必要..到最後一樣都要自己設定密碼?

所以說..
如果說寫入模組轉成增益集這部分越級的話
對於工作表的程式碼保護,大大有什麼建議的方法?
對岸好像也很多vba破解密碼的
不知道大大對於保護程式碼的部分是怎麼看?
目前想先保護工作表下的程式碼
有什麼建議的方法嗎
有在網路爬文,知道excel保密性很差了..
但起碼不要讓它隨便下載個vba破解器,馬上就破解
程式碼直接複製貼上過去的那種..

bioleon69 wrote:
(excel視窗的界面都是他設定的按鈕,不是什麼 常用/插入/版面設置那些的)
...(恕刪)


是excel 2010 自訂功能表,基本功能,不是什麼神奇的東西,如果不想看到其它功能表,用vba設定隱藏就好

excel 2007 如果不靠程式的話,可以做這種小按鈕



bioleon69 wrote:
想弄成模組是想做成增益集
是看過有人的excel,弄成增益集
...(恕刪)

那不是增益集

bioleon69 wrote:
而且作者如果有更新的話,那個excel點一下還可以自己更新...(誇張)
...(恕刪)

bioleon69 wrote:
居然還可以線上更新
...(恕刪)

很簡單的…就下載,複製舊資料,替換檔案
這種東西對我來說就像寫公式c=a+b一樣簡單
但您等級不夠,不適合
您現在可以做的是,複製舊資料到新版檔案的副程式
方便換檔案,這個錄製巨集就可以了
只要注意檔名不要搞錯就好

bioleon69 wrote:
另外,想看作者的程式碼還沒辦法看,有用密碼鎖住
...(恕刪)

因為功能特殊,可以賣錢,當然要鎖
不是每個人,會像我一樣,把最重要核心部份,弄一個教學出來
雖然大家都不看,只會抄,這可是超稀有的教學
而且幾乎不用修改就可以套用到所有網站

愈來愈不想發表一些特殊用途的範例了

bioleon69 wrote:

對岸好像也很多vba破解密碼的
不知道大大對於保護程式碼的部分是怎麼看?
...(恕刪)

我以前都是直接做成獨立應用程式,没有這種困擾
既然是要給別人的東西,不管你有沒有收費
就不要太在意破解這個問題了
哈 沒有啦..線上更新那部分目前沒有考慮..
純粹是個目標..

網上資料真的不是很多
像大大一樣肯分享教學的人不多了!
您這篇真的是好料的,懂得人肯定都抄走啦 (已抄)

應該是這樣講,會寫的我相信不少
一大堆vba老師肯定都會寫,但都是自用或者賣錢吧
甚至一些公司行號使用vba作帳,餐飲業的系統等等
會寫這些東西的人最好不會寫網抓的XD..
EXCEL是很普遍,也是最多人使用的工具
普遍到每間學校也都在教,真的很值得學習阿= =
台灣網路上資料這麼少就超怪的....

現在也都是去百度跟大陸的網站找資料
台灣資料真的超級少= =

大大,小弟目前的成果
分享一下喜悅,可能您會覺得沒什麼
不過對我來說從完全不懂程式的,自從看到你那個股價更新的東西
就嚇到啦..所以才開始摸索
慢慢網路上修改練習,最後到完成,還蠻有成就感
(是XML處理,不是QT唷)
也是您教出來的弟子阿!!

月營收下載程式
https://youtu.be/dD5Ce_VrN4w

之後想繼續鑽研,開發財務方面
下載四大報表,籌碼..等
並讓數據圖形化,用VBA在做自動化
所以..師傅..有沒有什麼EXCEL保密的方法
透露一下給愛徒阿!!
抱歉 師傅
我看您的密技好像有動過?


本來是
With CreateObject("adodb.stream")
..
..
end with
變成




Dim rawstr
Set rawstr = CreateObject("adodb.stream")
with rawstr
..
..
end with
Set rawstr = Nothing


有什麼差異嗎?
我現在是用舊款的密技

新款的多了dim 跟 set
為什麼會有這個更動

謝謝
bioleon69 wrote:
新款的多了dim 跟 set
為什麼會有這個更動
...(恕刪)

没差,功能一模一樣
是為了最後那個set nothing
可釋放一點點記憶體

我的範例(没亂改)可以連續抓1500個網頁(再多沒試過)
都不會出現問題

如果您其它的一堆副程式變數ˋ陣列没處理好
有可能會出現記憶體不足

所以我多加上一個nothing
不過没什麼幫助就是了,只是無聊加上去的
因為我的範例有加没加,記憶體使用量幾乎一樣
如果出現記憶體不足,原因一定是其它副程式

snare wrote:
没差,功能一模一樣是...(恕刪)


我在測試xml 有時候確實會出現記憶體不足
(並不是您說的沒什麼用)

所以可以在每一個sub裡面的最後都 set = nothing 釋放?

這樣對於運行速度 是否有影響?
文章分享
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 160)

今日熱門文章 網友點擊推薦!