COCO研究院

 找回密碼
 註冊
搜索
查看: 4911|回復: 21

[EXCEL] 請教Excel VBA高手 Excel 2000 & EX2007 相容OK 但Ex2007 沒執行

[複製鏈接]
發表於 16-4-8 21:43 | 顯示全部樓層 |閱讀模式
請教Excel VBA高手
這段程式碼 在Excel 2000 & EX2007 相容模式執行OK
可讀取資料  

但在 Excel 2007 卻讀不到資料   
不知是何原因?

Private Sub ICETRADEAPI1_NewDealReport(ByVal nDataType As Long, ByVal nDataIndex As Long)
    Dim tmpRptData As TRptData
    tmpRptData.nType = nDataType
    tmpRptData.nIndex = nDataIndex
    tmpRptData.nGridNum = m_DealRow
   
    'Sheet1.Cells(m_DealRow, 11) = ICETRADEAPI1.GetReportString(nDataType, nDataIndex, FTR_ID)
   ' Sheet1.Cells(m_DealRow, 12) = ICETRADEAPI1.GetReportString(nDataType, nDataIndex, FTR_MTH)
   ' Sheet1.Cells(m_DealRow, 13) = ICETRADEAPI1.GetReportString(nDataType, nDataIndex, CALLPUT)
    'Sheet1.Cells(m_DealRow, 14) = str(ICETRADEAPI1.GetReportValue(nDataType, nDataIndex, STRIKE_PRICE) / 1000)
   ' Sheet1.Cells(m_DealRow, 15) = ICETRADEAPI1.GetReportString(nDataType, nDataIndex, ORDNO)
    Sheet1.Cells(m_DealRow, 16) = ICETRADEAPI1.GetReportString(nDataType, nDataIndex, BUYSELL)
    Sheet1.Cells(m_DealRow, 17) = str(ICETRADEAPI1.GetReportValue(nDataType, nDataIndex, OD_PRICE) / 1000)
    Sheet1.Cells(m_DealRow, 18) = str(ICETRADEAPI1.GetReportValue(nDataType, nDataIndex, DEAL_QTY))
   
    If (m_DealRptCount = 0) Then
        m_DealRptData(m_DealRptCount).nGridNum = tmpRptData.nGridNum
        m_DealRptData(m_DealRptCount).nIndex = tmpRptData.nIndex
        m_DealRptData(m_DealRptCount).nType = tmpRptData.nType
        m_DealRptCount = m_DealRptCount + 1
    Else
        m_DealRptCount = UBound(m_DealRptData)
        ReDim Preserve m_DealRptData(m_DealRptCount + 1)
        m_DealRptData(m_DealRptCount).nGridNum = tmpRptData.nGridNum
        m_DealRptData(m_DealRptCount).nIndex = tmpRptData.nIndex
        m_DealRptData(m_DealRptCount).nType = tmpRptData.nType
        m_DealRptCount = m_DealRptCount + 1
    End If
   
    m_DealRow = m_DealRow + 1
End Sub



發表於 16-4-9 00:08 | 顯示全部樓層
很面熟,好像是凱基的API(昇陽)
發表於 16-4-9 09:48 | 顯示全部樓層
用低階版本excel VBA寫可以解決相容問題~排除這問題後
就是程式碼的問題了...
 樓主| 發表於 16-4-9 11:28 | 顯示全部樓層
googleandy 發表於 16-4-9 00:08
很面熟,好像是凱基的API(昇陽)

沒錯 這是凱基的API 艾揚的系統
Excel2007 可以下單
但讀不到成交資料
怪哉

 樓主| 發表於 16-4-9 11:35 | 顯示全部樓層
Tina888 發表於 16-4-9 09:48
用低階版本excel VBA寫可以解決相容問題~排除這問題後
就是程式碼的問題了... ...

此段程式碼在excel 2000 和 Excel 2007 相容模式都可以正常讀到資料
所以說 程式碼應該是OK的
但不知為何 Excel 2007 讀不到資料

我在猜
可能是語法定義要求不一樣的關係
但我又不知如何改?
所以才貼上來  請教高手幫忙

發表於 16-4-9 11:38 | 顯示全部樓層
HH1225 發表於 16-4-9 11:28
沒錯 這是凱基的API 艾揚的系統
Excel2007 可以下單
但讀不到成交資料

有點好奇, 為何執著一定要用 EXCEL2007 不可 ?
 樓主| 發表於 16-4-9 11:58 | 顯示全部樓層
googleandy 發表於 16-4-9 11:38
有點好奇, 為何執著一定要用 EXCEL2007 不可 ?

是啊
其實我一直用Excel2000 用了N年了
好用的很  現在還是繼續使用中
但是  每次電腦開機我的XP 系統
就會google ....不再支援等警告...
雖然還是不影響 XP+Excel 2000的運作

但總有一天需升級啊
所以Excel 2007 是未雨綢繆的的備用版
但卻意外發現 整修後的新程式在Excel 2007
簡化後竟然只有330KB
且執行速度似乎更快
所以 才何執著一定要用 EXCEL2007 啊

Googleandy 是賺錢高手
當然能理解我為何要追求下單速度啊

速度快可以成交到好價位






評分

參與人數 1金錢 +2 收起 理由
googleandy + 2 按一個讚

查看全部評分

 樓主| 發表於 16-4-11 16:35 | 顯示全部樓層
再推一下

請教Excel VBA高手
這段程式碼 在Excel 2000 & EX2007 相容模式執行OK
可讀取資料  

但在 Excel 2007 卻讀不到資料   
不知是何原因?
沒有任何的錯誤訊息 所以也無從 debug

有高手可以指導方向嗎?



發表於 16-4-12 01:37 | 顯示全部樓層
win7x64  不能用excel2000吗

win7*32 应用就能用excel2000了吧


换电脑会不会更快,i7+SSD
 樓主| 發表於 16-4-12 07:09 | 顯示全部樓層
andy03 發表於 16-4-12 01:37
win7x64  不能用excel2000吗

win7*32 应用就能用excel2000了吧

沒錯 win7 不認識 Excel 2000
我在2009年就用 I7 了
使用快7年了
所以 電腦的配備綽綽有餘

但還是謝謝您的回覆



 樓主| 發表於 16-4-12 10:46 | 顯示全部樓層
googleandy 發表於 16-4-9 11:38
有點好奇, 為何執著一定要用 EXCEL2007 不可 ?

Excel2007vs2000.GIF

Googleabdy大

這就是我今早測試的結果
也就是我執著一定要用 EXCEL2007 的原因

評分

參與人數 1金錢 +2 收起 理由
googleandy + 2 0.5秒,確實很多。

查看全部評分

發表於 16-4-12 10:58 | 顯示全部樓層
開啟順序
(1) 2000  , 2007
(2) 2007  , 2000

再比較看看
 樓主| 發表於 16-4-12 11:16 | 顯示全部樓層
morona 發表於 16-4-12 10:58
開啟順序
(1) 2000  , 2007
(2) 2007  , 2000

謝謝您的建議
持續比較中
第二次訊號 2007 比2000 快0.15秒

不同電腦 當然會有誤差 數據未必精確
2000 使用Intel I7  檔案比較大
2007 使用 AMD 6核 CPU  檔案精簡




發表於 16-4-12 12:16 | 顯示全部樓層
HH1225 發表於 16-4-12 11:16
謝謝您的建議
持續比較中
第二次訊號 2007 比2000 快0.15秒

電腦不同
比對是無法判定 2000, 2007 哪個快的


 樓主| 發表於 16-4-12 13:14 | 顯示全部樓層
morona 發表於 16-4-12 12:16
電腦不同
比對是無法判定 2000, 2007 哪個快的

沒錯 環境不一樣 比較的結果是不客觀的
這是測試是我個人的意外發現
僅供個人參考用

回到原始的貼文的目的

請教Excel VBA高手 Excel 2000 & EX2007 相容OK
但Ex2007 沒執行
有高手知道原因嗎?
謝謝

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-20 09:29

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |