顯示具有 VB 標籤的文章。 顯示所有文章
顯示具有 VB 標籤的文章。 顯示所有文章

2008年8月12日 星期二

replace() 遇到NULL時發生錯誤

replace 遇到 Null 值時會發生錯誤,錯誤訊息:Null 的使用不正確: 'replace'


原程式碼:
out = out & replace(asrs.Fields(i).Value,","," ") & ","


改為:
If Not IsNull(as400rs.Fields(i).Value) Then
out = out & replace(asrs.Fields(i).Value,","," ") & ","
Else
out = out & " " & ","
End If

2008年7月7日 星期一

SQL Command Time

在Excel中使用ADO連線至SQL Server,是常用且簡單的報表製作方式。

最近有遇到一個前輩做的Excel檔案,是可供使用者輸入日期區間後,查詢期間的交易統計表。

越來越多使用者跟我反應常常會出現『逾時終止』的錯誤訊息,我測試計算了一下出現錯誤訊息的時間都為30秒。



上網查了一下資料,原來CommandTimeout(SQL語法執行的時間)預設值為30秒,解決方法就是給他設長一點啦。

Dim cn As New ADODB.Connection
Dim recset As ADODB.Recordset
Dim connectstr As Stringconnectstr = "Driver={SQL Server};Server=local;Network=DBMSSOCN;Database=northwind;Uid=sa;Pwd=sa;"
cn.Open connectstrOn Error GoTo err_rtn
cn.CommandTimeout = 600 '秒
Set recset = New ADODB.Recordset
recset.Open sour, cn