大伊人青草狠狠久久-大伊香蕉精品视频在线-大伊香蕉精品一区视频在线-大伊香蕉在线精品不卡视频-大伊香蕉在线精品视频75-大伊香蕉在线精品视频人碰人

您現在的位置:程序化交易>> 期貨公式>> 金字塔等>> 金字塔知識>>正文內容

vba字典在金字塔中如何表示 [金字塔]

  • 咨詢內容:

    問題:

         在鄭州期貨市場,將商品名稱左邊兩位存入數組MC(),
            通過輸出,驗證MC()確實有數據 

               希望:把數組MC()里記錄裝入字典,過濾掉重復的記錄。

                  但 加入數據時提示錯誤。

     

         期望得到幫助和指導,謝謝。

     

    ,,,,

    Set d=CreateObject("Scripting.Dictionary")     '將數組MC()裝入字典,濾掉重復記錄
    for qq=0 to ubound(mc)
    d.Add mc(qq)                                               '加入數據時出現錯誤
    next
    application.MsgOut d.count                   
    End Sub

     

     

    下邊為測試時源代碼:

     

    Sub t_lx()  '在鄭州期貨市場,將商品名稱左邊兩位存入數組MC()
    dim mc()
    dim d
    Count = MarketData.GetReportCount("zq")
    redim mc (Count-1)
    For i = 0 To Count-1 
    set Report3 = MarketData.GetReportDataByIndex("zq",i)                                         
    mc(i)=Left(Report3.stockname,2)
    Next
    for nn= 0 To i-1
    application.MsgOut mc(nn)    '通過輸出,驗證MC()確實有數據 
    Next

    Set d=CreateObject("Scripting.Dictionary") '將數組MC()裝入字典,濾掉重復記錄
    for qq=0 to ubound(mc)
    d.Add mc(qq)                       '加入數據時出現錯誤
    next
    application.MsgOut d.count                   
    End Sub

     

  • 金字塔客服: 字典是有鍵值對的,就是說有兩列數據,你存入的時候,只有一個值,當然出錯了。

     

  • 用戶回復: 以下是引用guotx2010在2013-2-28 16:30:05的發言:
    字典是有鍵值對的,就是說有兩列數據,你存入的時候,只有一個值,當然出錯了。

    redim mc(Count-1) '名稱
    redim dm(Count-1) ’代碼

    mc(i)=Left(Report3.stockname,4)
    dm(i)=Right(Report3.Label,2)

     

    d.Add mc(qq),dm(qq)    還是提示錯誤:

     

    編輯器錯誤“457”,由于控件無法看到、尚未啟用,或其他類型不接受焦點,因此無法將焦點移至該控件。

     

    請老師再賜教。

     

       另外,測試了論壇中“找主力合約”的例子,在本機上運行正常,里邊也應用到“字典”,因個人水平較低,看不出例子為啥就能運行。

     

     

     

     

     

     

     

  • 網友回復: ''''''這是我用著的代碼
    Set dominantContract=CreateObject("Scripting.Dictionary")
    '枚舉合約,將連續合約的代碼和對應市場代碼分別作為鍵和值存入字典容器,供后續操作調用
    Sub GetLxCode()
     Dim marketName
      dominantContract.RemoveAll
      marketName=Array("SQ","DQ","ZQ","ZJ")
      prefixStockNameOld=""
     c"
      contractVol=0
     
      For j=0 To UBound(marketName)
        n=marketData.GetReportCount(marketName(j))
        For i=0 To n-1
          Set reportData=marketdata.GetReportDataByIndex(marketName(j),i)
          prefixStockNameCur=left(reportData.StockName,2)
          suffixStockNameCur=right(reportData.StockName,2)
          If suffixStockNameCur>="00" And suffixStockNameCur<"99" And reportData.Volume>0 Then
          'If suffixStockNameCur="00" And reportData.Volume>0 Then
           If prefixStockNameCur<>prefixStockNameOld Then
             If contractLabel<>"" Then
               dominantContract.Add contractLabel,contractMarket
             End If
             prefixStockNameOld=prefixStockNameCur
             contractLabel=reportData.Label
             contractMarket=marketName(j)
             contractVol=reportData.Volume
           ElseIf reportData.Volume>contractVol then
             contractLabel=reportData.Label
             contractVol=reportData.Volume
           End If
         End If
        Next 
      Next
      dominantContract.Add contractLabel,contractMarket
     End sub

     

  • 網友回復:

     prefixStockNameOld=""
     c"
    感覺這兩句很神秘,在程序中是啥意思?尤其是Old。

    希望老師能把每一條代碼給給注釋,便于學習。

    另外:dominantContract.Add contractLabel,contractMarket

    如果想把字典中已經裝入的記錄逐條顯示出來,應該怎么寫。

    總感覺金字塔里字典的用法與VBA 不太一樣,懇請指點。

    謝謝。

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 262069696  點擊在線交流進行 有償 編寫!不貴!點擊查看價格!


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 成人亚洲在线 | 亚洲国产成人久久综合一 | 四虎永久在线精品视频免费观看 | 亚洲高清免费 | 成人特黄午夜性a一级毛片 成人特级毛片69免费观看 | 一级片看看| 久久精品国产亚洲欧美 | 伊人久久综合视频 | 欧美成人免费全部观看天天性色 | 国产高清狼人香蕉在线观看 | 成人午夜性视频欧美成人 | 国内欧美一区二区三区 | 添bbb免费观看高清视频 | 欧美性视频一区二区三区 | 欧美一区二区三区免费视频 | 91久久国产青草亚洲 | 精品国产免费第一区二区三区日韩 | 99国产精品免费视频观看 | 九九九好热在线 | 久久香蕉国产线看观看精品蕉 | 欧美激情 亚洲 | 99精品久久99久久久久久 | 日本一级大黄毛片一级 | 亚洲爱爱视频 | 成人区精品一区二区不卡亚洲 | 欧美一区二区三区免费视频 | 免费精品久久 | 久久91精品久久久久久水蜜桃 | 夜色视频一区二区三区 | 亚洲精品欧美精品 | 114一级毛片免费 | 成人性a激情免费视频 | 99爱视频在线观看免费播放 | 香蕉国产精品 | 乱色欧美videos黑人 | 婷婷在线成人免费观看搜索 | 色吧久久| 不卡日本 | 92精品国产自产在线观看 | 久久久亚洲精品视频 | 国产亚洲欧美另类一区二区三区 |