|
Private Sub adddate_Click()
On Error GoTo err_this
Dim cat As New ADOX.Catalog
Dim tbl As ADOX.Table
Dim cmd As New ADODB.Command
Dim prm As New ADODB.Parameter
Dim strsql As String
run_cmd:
strsql = "SELECT 匯輝送貨資料.日期, 匯輝送貨資料.送貨單號碼, 匯輝送貨資料.客名, 匯輝送貨資料.客採購NO, 匯輝送貨資料.JobNo, 匯輝送貨資料.缸號, 匯輝送貨資料.匹數, 匯輝送貨資料.布類, 匯輝送貨資料.布種, 匯輝送貨資料.浮重, 匯輝送貨資料.實數重, 匯輝送貨資料.重量單位, 匯輝送貨資料.加工項目, 匯輝送貨資料.染廠價, 匯輝送貨資料.工序, 匯輝送貨資料.單價, 匯輝送貨資料.金額單位, 匯輝送貨資料.送交, 匯輝送貨資料.收費, 匯輝送貨資料.外發, 匯輝送貨資料.Check INTO AddHHAllTable FROM 匯輝送貨資料 WHERE (((匯輝送貨資料.日期) Between ? And ?)) ORDER BY 匯輝送貨資料.缸號"
cmd.CommandText = strsql
cmd.ActiveConnection = CurrentProject.Connection
cat.ActiveConnection = CurrentProject.Connection
prm.Type = adDate
cmd.Parameters.Append prm
Set prm = Nothing
prm.Type = adDate
cmd.Parameters.Append prm
Set prm = Nothing
cmd.Parameters(0) = Me.begindate /*開始引用窗體日期。如果您想生成默認值可以試
cmd.Parameters(1) = Me.enddate /* 直接賦一具體數值。然后用盼斷如果窗體引用值
cmd.Execute /*若為空則提供默認值。否則引用窗體值。
Set cmd = Nothing
exit_sub:
Exit Sub
'err_this:
'MsgBox Err.Description
'Resume exit_sub
err_this:
If Err.Number = -2147217900 Then
If (MsgBox("預生成的表已存在,DEL他嗎?", vbOKCancel, "hg") = vbOK) Then
cat.Tables.Delete "AddHHAllTable"
cat.Tables.Refresh
Set cat = Nothing
GoTo run_cmd
Else
MsgBox Err.Description, , Err.Number
Resume exit_sub
End If
End If
End Sub
-------------------------------------------------------
這是本人給朋友寫的一個類似功能。
如果各位改一改我想是行的通的。 |
|