- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
7#
發表於 2013-5-8 21:01
| 只看該作者
本帖最後由 GBKEE 於 2013-5-8 21:31 編輯
回復 6# stillfish00 - Evaluate 方法
- 請參閱套用至範例特定將 Microsoft Excel 名稱轉換成物件或者值。
- expression.Evaluate (Name)
- expression 對於選擇性的 Application 物件,對於必選的 Chart 物件,DialogSheet 物件,和 Worksheet 物件。傳回 [套用於] 清單中的物件的運算式。
- Name 必選的 String。物件名稱,使用 Microsoft Excel 的命名轉換。
- 備註
- 下列幾類 Microsoft Excel 名稱可以使用此方法:
- A1 樣式的參照。可以 A1 樣式的記號列出對任意的單個儲存格的參照。所有的參照都當成絕對參照。
- 範圍。您可以使用範圍、交叉範圍和多重範圍,使用的運算子分別為冒號、空白及逗號。
- 已定義的名稱。您可以指定巨集語言中任何名稱。
- 外部參照。可以使用 ! 運算子參照另一活頁簿上的儲存格或已定義的名稱。例如,Evaluate("[BOOK1.XLS]Sheet1!A1")。
- PS: ***--外部參照。 [BOOK1.XLS] 須是開啟的 -***-'外部參照到 未開啟的檔案傳回錯誤
- 附註 使用方括號 (例如, A1:C5) 與用字串引數呼叫 Evaluate 方法是等效的。例如,下列運算式對是等價的。
複製代碼- Private Sub Worksheet_Change(ByVal Target As Range)
- Dim s
- If Target.Address = "$A$1" Then
- s = Dir(ThisWorkbook.Path & "\" & [A1] & "*")
- If s <> "" Then
- Application.EnableEvents = False
-
- '[A2] 公式 1
- [A2] = "='" & ThisWorkbook.Path & "\[" & s & "]RR'!$B$10 *2"
- '[A2] = "='" & ThisWorkbook.Path & "\[" & s & "]RR'!$B$10+'" & ThisWorkbook.Path & "\[" & s & "]RR'!$B$10"
-
- '[A2] 公式 2
- 'Names.Add Name:="AAA", RefersTo:="='" & ThisWorkbook.Path & "\[" & s & "]RR'!$B$10"
- '[A2] = "=AAA*2" '"=AAA+AAA"
- '[A4] = Evaluate("AAA") '傳回錯誤值
- [A2] = [A2].Value '公式轉為數值
- Application.EnableEvents = True
- Else
- MsgBox "File Not Found!"
- End If
- End If
- End Sub
複製代碼 |
|