- 帖子
- 2
- 主題
- 1
- 精華
- 0
- 積分
- 3
- 點名
- 0
- 作業系統
- win 7
- 軟體版本
- 專業版
- 閱讀權限
- 10
- 註冊時間
- 2015-9-24
- 最後登錄
- 2015-9-24
|
2#
發表於 2015-9-24 18:05
| 只看該作者
重貼程式碼- Sub AllCol(theArray As Variant, ColNum As Integer, ByRef mArr() As Double) '傳入二維陣列,傳出一維陣列
-
- Dim s, j
-
- s = 0 '初始化s
- For j = 1 To UBound(theArray, 1) '該二維陣列的列數(非行數)上限
-
- ReDim Preserve mArr(s) '重新定義一維陣列大小
-
- mArr(s) = theArray(j, ColNum)
- s = s + 1
- Next j
-
- End Sub
-
- Sub Ellipse1_Click()
-
- Dim T() As Variant
- Dim A() As Double
- Dim B() As Double
-
- Dim i, j
-
- T = Range("A1:D5461")
-
- Call AllCol(T, 1, A) '指定二維陣列T的第1行為一維陣列A
-
- For i = 0 To UBound(A)
- ReDim Preserve B(i)
- B(i) = (-1) * A(i)
- Next i
- '此for迴圈作用:將一維陣列A轉成[-A]
-
- Range("H1") = UBound(B) '將一維陣列B的個數印在H1儲存格
- Range("H2") = B(UBound(B)) '將一維陣列B的最末元素印在H2儲存格
- Range("H3") = Application.WorksheetFunction.Max(B) '將一維陣列B的最大值印在H3儲存格
-
- End Sub
複製代碼 |
|