2014-02-23 112 views
0

我試圖做一些VBA形式和計算一些簡單的值,但我不明白爲什麼VBA不認識Sin()和Cos()函數。例如:我寫了int(),VBA將它轉換成了Int(),但它對sin和cos沒有做同樣的處理。 此外,我試圖編譯我的代碼VBA sin()和cos()麻煩

Private Sub btn_exit_Click() 
    Unload laborator_2 
End Sub 

Private Sub btn_start_Click() 
    today.Caption = Date 
    rnb_val.Caption = Int(Rnd * 90 + 1) 
    sqrt_val.Caption = Sqr(rnb_val.Caption) 
    si_val.Caption = sin(rnb_val.Caption * 3.14159/180) 
    co_val.Caption = rnb_val.Caption * 3.1459/180 
End Sub 

後,我得到這個消息:

Run-time error "424" Object required 

enter image description here

林新在VBA,很抱歉,如果我沒有寫全細節。謝謝。

+0

在編輯器的即時窗口(ctrl + G)中鍵入'sin(1)'並返回,你會得到一個結果嗎?如果不是這樣?'math.sin(1)' –

+1

有一件事你可以肯定的,它不是罪的功能。你指的是什麼樣的控制?文本框?標籤?錯誤是在罪行? – CRondao

+2

使用'WorksheetFunction.Sin' – Kapol

回答

1

sin & cos不是構建到vba中的函數。但是,它們被構建到excel中,並且可以通過$ WorksheetFunction.Sin $和$ WorksheetFunction.Cos $的$ WorksheetFunction $對象來訪問它們。您可以在電子表格中使用的任何功能均可通過此方式訪問。

+3

sin/cos * *內置到VBA中,它們是數學命名空間的一部分以及round(),log()等 –

+0

那麼,你生活和學習。謝謝@亞歷克斯。 –

0

檢查您在表單上給予您標籤的名稱 - 它們必須完全匹配代碼中的名稱。我通過命名si_val標籤sival來取得同樣的錯誤。