標題:
[發問]
VBA不給用工作表函數ABS絕對值功能嗎?
[打印本頁]
作者:
VBALearner
時間:
2016-8-7 17:33
標題:
VBA不給用工作表函數ABS絕對值功能嗎?
請教一下各位高手
a = -0.543
msgbox application.worksheetfunction.abs(a)
複製代碼
ABS絕對值函數在工作表上面使用是可行,但移到VBA程式碼裡面就不能用嗎?
各位高手在VBA裡面要使用ABS絕對值得功能時,難道只能打...
if a < 0 then a = -a
複製代碼
了嗎O___Q?!
雖然也不是不行啦.....
作者:
VBALearner
時間:
2016-8-7 17:53
回復
1#
VBALearner
但是用evaluate就可以...?! 到底差在哪裡呢...=口="
a = -0.543
Msgbox Application.evaluate(ABS(a))
複製代碼
作者:
c_c_lai
時間:
2016-8-7 18:03
回復
1#
VBALearner
MsgBox Abs(a)
作者:
lpk187
時間:
2016-8-7 18:16
回復
2#
VBALearner
Abs()是屬於Visual Basic函數,直接引用就可以了
Dim MyNumber
MyNumber = Abs(50.3) ' 傳回 50.3。
MyNumber = Abs(-50.3) ' 傳回 50.3。
作者:
VBALearner
時間:
2016-8-7 22:38
回復
4#
lpk187
喔喔知道了感謝您!
順便問一下喔 要如何知道函數是不是Visual Basic的內建函數阿?
作者:
VBALearner
時間:
2016-8-7 22:39
回復
3#
c_c_lai
喔喔可以了感謝!
可以順便問一下您有關於 [ ] 的用法嗎T___T?
實在是有點難懂中括弧的用法......
作者:
lpk187
時間:
2016-8-8 00:18
本帖最後由 lpk187 於 2016-8-8 00:20 編輯
回復
5#
VBALearner
在VBE在中使用"列出屬性或方法"
當你鍵入Application.WorksheetFunction.時所顯示出的下拉式選單所列出的都是工作表函數。如下圖:
[attach]24855[/attach]
而VB的內鍵函數就直接輸入即可,如下圖:反白部份,很像綠色橡皮擦圖示就是VBA內鍵函數
[attach]24856[/attach]
在 VBE說明中,搜尋 "Visual Basic 中可用的工作表函數清單",可獲取其清單
當
瞭解工作函數後,且工作表函數在VBA輸入時,是可以簡化其語句,
如Application.WorksheetFunction.CountA()可簡化成Application.CountA()或WorksheetFunction.CountA()
作者:
VBALearner
時間:
2016-8-8 00:23
回復
7#
lpk187
喔喔哇懂了!感謝您詳細的回答!!!
作者:
Scott090
時間:
2016-8-10 07:22
回復
6#
VBALearner
VBA內 中括號 [ ] 相當於 Range 值
'單一cell 值:
a= cells(1,"A")
a = [A1]
'一個陣列 1x2 的值
b= range("A1:B1")
b = [A1:B1]
'一個陣列 3x3 的值
c = range("A1:C3")
c = [A1:C3]
作者:
GBKEE
時間:
2016-8-10 07:52
回復
9#
Scott090
VBA內 中括號 [ ] 指活頁簿的[名稱,物件,範圍,函數的計算],不可是VBA內的變數
作者:
Scott090
時間:
2016-8-10 08:27
回復
10#
GBKEE
感謝超版 的增廣說明與指導
作者:
VBALearner
時間:
2016-8-11 00:03
回復
10#
GBKEE
好的好的! 感謝您為我解惑^^
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)