VBA中,Int 3,2怎麼算

2021-05-20 09:09:41 字數 4314 閱讀 3478

1樓:匿名使用者

應該是int(-3.2)吧

結果是-4

int函式的功能應該是取最接近,但小於該數的整數。

歡迎討論

2樓:小刺蝟

int(number)函式:返回引數的整數部分例如:int(-8.4) 轉換成 -9

區別fix(number),fix(-8.4) 轉換為-8所以int(-3.2) = - 4 (已在vba中測試 )

3樓:太極健

int(-3,2)這是什麼意思???

4樓:匿名使用者

int(-3.2)=-4,不知道你哪是道號還是點。

vba中,函式表示式int(-3.2)的值為

5樓:匿名使用者

在vba當中,int函式與fix函式大同小異,都是返回數字的整數部分,int 和 fix 均刪除 number 的小數部分並返回獲得的整數值。int 和 fix 的區別在於,如果 number 為負數,則 int 返回小於或等於 number 的第一個負整數,而 fix 返回大於或等於 number 的第一個負整數。例如,int 將 -8.

4 轉換為 -9,而 fix 將 -8.4 轉換為 -8。

所以,int(-3.2)=-4 而 fix(-3.2)=-3

6樓:匿名使用者

-4 ,

vba中的int()和fix()函式有什麼區別

7樓:only夢想

1、取整

int()的取整規則是向下取整為最接近的整數fix()的取整規則是向最靠近零取整。

2、負數取整不同

int()返回小於或等於 number 的第一個負整數,而fix()則會返回大於或等於 number 的第一個負整數。

例如,int 將-8.4轉換成-9,而 fix 將 -8.4轉換成 -8。

8樓:匿名使用者

對於正來

數來說,int()和fix()兩者源沒有區別。

對於負數來說,int()和fix()就有區別了:

int 返回小於或等於 number 的第一個負整數,而 fix 則會返回大於或等於 number 的第一個負整數。

例如,int 將 -5.4 轉換成 -6,而 fix 將 -5.4 轉換成 -5。

9樓:匿名使用者

int 和 fix 的不同之處在bai於,如果 number 為負du數,zhi

則 int

返回dao小於或等於回 number 的第一答個負整數,而 fix 則會返回大於或等於 number的第一個負整數。例如,int 將 -8.4 轉換成 -9,而 fix 將 -8.

4 轉換成 -8。

fix(number) 等於:sgn(number) * int(abs(number))

10樓:匿名使用者

區別在負數,你把8.4換成 -8.4,在執行一下

int(h11/i11 vba怎麼寫

11樓:碧血玉葉花

vba 裡餘數的運算子是 mod

給你個簡單的例子,參考一下

sub aa()

for i = 1 to 10

'給a變數賦值一個1-100之間的隨機整數a = int(rnd() * 100)

'ys 是 a除以3的餘數

ys = a mod 3

if ys = 0 then msgbox "數字:" & a & "可以被數字:3 整除,得數:" & a / 3

next

end sub

12樓:復仇之牙

int(range("h11") / range("i11"))

excel的vba中int函式提問

13樓:匿名使用者

估計是老微所有軟體系列的浮點計算問題. 無解.

14樓:平陽虎

因為int函式是易失性函式。

15樓:來自滑雪場花顏月貌的兔耳蘭

我也是遇到了這個問題,後來我用了worksheetfunction.rounddown((66.6*2/7.4),0)的結果18才正確.

sub test()

msgbox worksheetfunction.rounddown((66.6 * 2 / 7.4), 0)

end sub

excel的vba中int函式提問sub 取整() msgbox 66.6 * 2 / 7.4

16樓:天生小草

測試了一下,確實如你所說的,msgbox int(133.2/7.4)顯示17,msgbox 133.2/7.4顯示18

msgbox int(66.6 / 3.7)顯示17msgbox 66.

6 / 3.7顯示18msgbox int(66.6 / 3.

7)+1才顯示18在單元格里用這個公式卻都顯示18.

int函式是截尾法取整,就是int(1.999999)=1,這個應該是計算的偏差,也可以認為是一個bug,可以向微軟提交(也許有人提交過了)。

估計msgbox 顯示結果的計算方法和單元格內數值的計算方法略有不同,所以兩個結果不同。

這個在某些時候除錯是需要注意。

17樓:匿名使用者

66.6*2/7.4=17.89,上面那個數字如果四捨五入就是18,int是向下取整就是17。

vba中n(2)=2:n(3)=14什麼意思

18樓:匿名使用者

借鑑一下1僂的

n()是個陣列,2和3是腳標。

分別給陣列n中的第2和第3個元素賦值2和14補充:這是個一維陣列

具體第幾個元素要看陣列是怎麼定義的。

如果只定義了陣列名稱未定義陣列上下限。那麼n(2) 就是第三個元素 n(3)是第4個元素。

19樓:匿名使用者

n()是個陣列,2和3是腳標。

分別給陣列n中的第2和第3個元素賦值2和14

在excel vba中如何判定單元格中的資料型別是整數還是其他呢?

20樓:陽光上的橋

在vba裡面,可以使用vartype獲得變數以及單元格的資料型別,數值型別值為5(vbdouble)、空型別為0(vbempty)、字串型別為8(vbstring )。

例子**1:顯示a1單元格的資料型別

sub test()

msgbox vartype([a1])

end sub

例子**2:判斷a1單元格資料型別是否數值sub test()

if vartype([a1]) = vbdouble thenmsgbox "a1是數值型別"

else

msgbox "a1不是數值型別"

end if

end sub

實際上vb還有vblong、vbdecimal等型別,但單元格為數值時預設是vbdouble。

21樓:匿名使用者

那你試試下面這樣,先判斷是否為數

1,sub qgrmdtj()

for i = [a65536].end(xlup).row to 1 step -1

if isnumeric(cells(i, 1)) then

if cells(i, 1) = int(cells(i, 1)) and cells(i, 1) > 1 then

rows(i).insert

end if

end if

next

end sub

--------------------------

2,sub qgrmdtj()

for i = [a65536].end(xlup).row to 1 step -1

if isnumeric(cells(i, 1)) then

if cells(i, 1) = int(cells(i, 1)) and cells(i, 1) > 1 then

msgbox i'彈出訊息框顯示行數

end if

end if

next

end sub

matlab中怎麼使用int函式翱這樣用對嗎

舉個例子 syms x int x int x,0,1 得到來的結果如下 自 ans x 2 2 ans 1 2syms表示定義一個符號變數,符號變數區別於數值型的那些變數,用於進行公式的化簡和計算。int表示積分,第一個算的是不定積分,當然你也可以像第二句那樣計算定積分,寫入上下限。當然也可以對其...

在c 中怎麼將string型怎麼和int型互相轉換

string轉int string str 12345 int b atoi str.c str int轉string int n 65535 char t 256 string s sprintf t,d n s t 基本思想就是將string 和char 還有int聯絡起來,char 是他們之間...

在c中怎麼把long轉換成int

強制轉換。long int x 123 short int y int z y short int x z int x long int x 和long x 是沒區別的,都表示長整型,樓上是對的 long val 500 int a long val 用強制轉換就行,int x long d 100...