![]() |
DBGrid的欄位格式
請教各位:
我用From_Load方法使adodc連接SQL資料,要如何改變浮點數欄位的資料為小數點後1位 (原本為小數點後8位,我有利用.DataFormat屬性可是不會用) 謝謝 |
引用:
|
引用:
|
是指vb的嗎?
可以試試用format("##.#",變數值)來寫 要測一下喔,我有好長一段時間沒用vb了:on_44: |
引用:
|
引用:
應該是 format(變數, 字串表達式) Format(變數, "###.#") |
引用:
我的程式碼如下,我要如何以Format()格式組合使JobBatchSet的欄位變成(###.#) 謝謝 '======================================================= Private Sub Form_Load() ConnStr = "Provider=MSDASQL.1;Persist Security Info=False;" & _ "Data Source=CC_walsin1_07_05_08_09_57_04R" Sql_Data = "SELECT JobName, JobProcessCode, JobBatchSet, " & _ "JobBatchAct , JobStatus, LastUser, LastAccess " & _ "FROM UA#JobArc" Adodc1.ConnectionString = ConnStr Adodc1.CommandType = adCmdText Adodc1.RecordSource = Sql_Data Adodc1.Refresh End Sub '======================================================= |
資料來源是什麼咧??
ACCESS / SQL Server /..... |
引用:
|
語法:
'======================================================= '四捨五入取小數1位 "FLOOR(JobBatchAct * 10 + 0.5) * 0.1" '四捨五入取小數2位 "FLOOR(JobBatchAct * 100 + 0.5) * 0.01" '四捨五入取小數3位 "FLOOR(JobBatchAct * 1000 + 0.5) * 0.001" 依此類推 |
引用:
已經可以了,不過我不太了解為什麼要+0.5:on_47: |
啊哈,其實偶也只是抄來的,所以不知道為何
不過偶想是這樣的 <1> Floor ==> 傳回小於或等於指定數值運算式的最大整數 ==> 偶解釋為 無條件捨去小數法 <2>以實值為例 1.23456 取小數1位 * 10 = 12.3456 + 0.5 = 12.8456 floor(12.8456)=12 (無條件捨去法) * 0.1 = 1.2 取小數2位 * 100 = 123.456 + 0.5 = 123.956 floor(123.956)=123 (無條件捨去法) * 0.01 = 1.23 取小數3位 * 1000 = 1234.56 + 0.5 = 1235.06 floor(1235.06)=1235 (無條件捨去法) * 0.001 = 1.235 其實就是 (1)把它要四捨五入的那個位數先變成 小數第一位 (2)這樣一來 + 0.5 之後,它就達到了四捨五入的功能 (該進位就進位到整數) (3)(該捨的就捨掉啦,小數都捨掉了) (4)最後再還原(1)做的動作((1)* 多少,(4)這裡就 / 多少(用*方式達成) |
引用:
我了解了,+0.5就是要作到四捨五入的功能:on_15: |
所有時間均為台北時間。現在的時間是 02:24 PM。 |
Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.
『服務條款』
* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *