求教一個數組的構建 [金字塔]
- 咨詢內容:
我想把每周最后一根K線的收盤價和最新一根K線的收盤價組成一個數組。請教如何構建?謝謝!
此主題相關圖片如下:2013-05-29_090115.jpg
如圖上的紅色收盤價
麻煩回答詳細一些、最好是復制過來就能用,還沒學習過高級教程 [此貼子已經被作者于2013-5-29 9:25:15編輯過] - 金字塔客服:
1、聲明數組。
數組的聲明方式和其它的變量是一樣的,它可以使用Dim、Static、Private 或 Public 語句來聲明。標量變量(非數組)與數組變量的不同在于通常必須指定數組的大小。若數組的大小被指定的話,則它是個固定大小數組。若程序運行時數組的大小可以被改變,則它是個動態數組。
數組是否從0 或1 索引是根據Option Base 語句的設置。如果Option Base 沒有指定為 1,則數組索引從零開始。
(1)聲明固定大小的數組
下面這行代碼聲明了一個固定大小的數組,它是個 11 行乘以 11 列的 Integer 數組:
Dim MyArray(10, 10) As Integer
(2)聲明動態數組
若聲明為動態數組,則可以在執行代碼時去改變數組大小。可以利用 Static、Dim、Private 或 Public 語句來聲明數組,并使括號內為為空,如下示例所示。
Dim sngArray() As Single
2、獲得數組的最大與最小下標。利用LBound 函數與UBound 函數函數可以分別來獲得數組的最小與最大下標,其語法是:
LBound(arrayname[, dimension])
UBound(arrayname[, dimension])
語法包含下面部分:
部分 描述
arrayname 必需的。數組變量的名稱,遵循標準的變量命名約定。
dimension 可選的;Variant (Long)。指定返回哪一維的下界。1 表示第一維,2 表示第二維,如此類推。如果省略dimension,就認為是 1。
3、ReDim 語句。ReDim 語句用來定義或重定義原來已經用帶空圓括號(沒有維數下標)的 Private、Public 或 Dim 語句聲明過的動態數組的大小,其語法是:
ReDim [Preserve] varname(subscripts) [As type] [, varname(subscripts) [As type]] . . .
ReDim 語句的語法包括以下幾個部分:
部分 描述
Preserve 可選的。關鍵字,當改變原有數組最末維的大小時,使用此關鍵字可以保持數組中原來的數據。
varname 必需的。變量的名稱;遵循標準的變量命名約定。
subscripts 必需的。數組變量的維數;最多可以定義 60 維的多維數組。subscripts 參數使用下面的語法:
[lower To] upper [,[lower To] upper] . . .
如果不顯式指定lower,則數組的下界由Option Base 語句控制。如果沒有Option Base 語句則下界為 0。
type 可選的。變量的數據類型;可以是 Byte、Boolean、Integer、Long、Currency、Single、Double、Decimal(目前尚不支持)、Date、String(對變長的字符串)、String * length(對定長的字符串)、Object、Variant、用戶定義類型或對象類型。所聲明的每個變量都要有一個單獨的 As type 子句。對于包含數組的 Variant 而言,type 描述的是該數組的每個元素的類型,不能將此 Variant 改為其它類型。
可以使用 ReDim 語句反復地改變數組的元素以及維數的數目,但是不能在將一個數組定義為某種數據類型之后,再使用ReDim 將該數組改為其它數據類型,除非是 Variant 所包含的數組。如果該數組確實是包含在某個Variant 中,且沒有使用Preserve 關鍵字,則可以使用As type 子句來改變其元素的類型,但在使用了此關鍵字的情況下,是不允許改變任何數據類型的。
如果使用了Preserve關鍵字,就只能重定義數組最末維的大小,且根本不能改變維數的數目。例如,如果數組就是一維的,則可以重定義該維的大小,因為它是最末維,也是僅有的一維。不過,如果數組是二維或更多維時,則只有改變其最末維才能同時仍保留數組中的內容。
- 用戶回復:
Dim MyArray(10, 10) As Integer
在金字塔中把As Integer去掉就能定義 不報錯了
- 網友回復:
我再想想
[此貼子已經被作者于2013-5-29 9:53:44編輯過]
- 網友回復: 想不出來,坐等高手
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 1145508240 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容