久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

ExecuteExcel4Macro (宏函數(shù))使用說明

 默默小卒boe436 2018-08-17
用ExecuteExcel4Macro從未打開的Excel工作簿中讀取數(shù)據(jù)(轉(zhuǎn)載)
從另外一個(gè)未打開的Excel文件中讀取數(shù)據(jù)的函數(shù)
下面這個(gè)函數(shù)調(diào)用XLM宏從未打開的工作簿中讀取數(shù)據(jù).
*注意:  該函數(shù)不能用于公式.

GetValue函數(shù),需要以下四個(gè)變量
path:  未打開的Excel文件的路徑 (e.g., "d:\test") 
file:  文件名(e.g., "test.xls") 
sheet: 工作表的名稱 (e.g., "Sheet1") 
ref:   引用的單元格 (e.g., "C4") 
'*********函數(shù)如下
Private Function GetValue(path, file, sheet, ref)
'   從未打開的Excel文件中檢索數(shù)據(jù)
    Dim arg As String
'   確保該文件存在
    If Right(path, 1) <> "\" Then path = path & "\"
    If Dir(path & file) = "" Then
        GetValue = "File Not Found"
        Exit Function
    End If
'   創(chuàng)建變量
    arg = "'" & path & "[" & file & "]" & sheet & "'!" & _
      Range(ref).Range("A1").Address(, , xlR1C1)
'   執(zhí)行XLM 宏
    GetValue = ExecuteExcel4Macro(arg)
End Function


使用該函數(shù):
將該語句復(fù)制到VBA的模塊中,然后,在適當(dāng)?shù)恼Z句中調(diào)用該函數(shù). 下面的例子顯示D:\test 下的文件test.xls 的Sheet1中的單元格”A1”的內(nèi)容.
Sub TestGetValue()
    p = "d:\test"
    f = "test.xls"
    s = "Sheet1"
    a = "A1"
    MsgBox GetValue(p, f, s, a)
End Sub

下面還有一個(gè)例子.這個(gè)語句從一個(gè)未打開的文件中讀取1200個(gè)數(shù)值(100行12列),并將結(jié)果填到當(dāng)前工作表中.
Sub TestGetValue2()
    p = "d:\test "
    f = "test.xls"
    s = "Sheet1"
    Application.ScreenUpdating = False
    For r = 1 To 100
        For c = 1 To 12
            a = Cells(r, c).Address
            Cells(r, c) = GetValue(p, f, s, a)
        Next c
    Next r
    Application.ScreenUpdating = True
End Sub

說明: 如果工作簿處于隱藏狀態(tài),或者工作表是圖表工作表,將會(huì)報(bào)錯(cuò).


ExecuteExcel4Macro 使用說明

ExecuteExcel4Macro 方法
請(qǐng)參見 套用至 範(fàn)例 特定 
執(zhí)行 Microsoft Excel 4.0 巨集函數(shù),,然後傳回此函數(shù)的結(jié)果。傳回結(jié)果的型態(tài)取決於函數(shù)的型態(tài),。

expression.ExecuteExcel4Macro(String)

expression  選擇性的。傳回 Application 物件的運(yùn)算式。

String  必選的 String 資料型態(tài),。不帶等號(hào)的 Microsoft Excel 4.0 巨集語言函數(shù)。所有參照必須是像 R1C1 這樣的字串,。如果 String 內(nèi)包含雙引號(hào),,則必須寫兩個(gè),。例如,要執(zhí)行此巨集函數(shù) =MID("sometext",1,4),,String 應(yīng)寫成 [MID(""sometext"",1,4)],。

註解
Microsoft Excel 4.0 巨集不在目前活頁簿或工作表的環(huán)境中求值。也就是說所有的參照都應(yīng)該是外部參照,,而且需要明確指定活頁簿名稱,。 例如,要在 Book1 中執(zhí)行 Microsoft Excel 4.0 巨集 [My_Macro] ,,必須使用 [Book1!My_Macro()],。如果不指定活頁簿名稱,此方法將失敗,。

範(fàn)例
此範(fàn)例對(duì) Sheet1 的 C3 儲(chǔ)存格執(zhí)行 GET.CELL(42) 巨集函數(shù),,然後在訊息方塊中顯示結(jié)果。GET.CELL(42) 巨集函數(shù)傳回目前視窗左限到目前儲(chǔ)存格的左邊之間的水平距離,。Visual Basic 中沒有與此巨集函數(shù)直接等價(jià)的函數(shù)。

Worksheets("Sheet1").Activate
Range("C3").Select
MsgBox ExecuteExcel4Macro("GET.CELL(42)")


'***直接讀取c:\test.xls(不打開)中sheet1.a1的值另一種參考代碼 (比一樓的寫法簡(jiǎn)單許多)
Sub TestGetValue()
   str0 = "'C:\[test.xls]Sheet1'!R1C1"
MsgBox ExecuteExcel4Macro(str0)
End Sub
)

雖然Excel VBA的相關(guān)說明只有一點(diǎn)點(diǎn),但我覺的
ExecuteExcel4Macro似乎好像有更多的用法,有待大家一同去發(fā)掘了

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多