Imam formu na koju sam dovukao Active X calendar. Na formi imam i txtDatIzb koji se azurira sa kalendara. Klikom na cmdOK vrijednost txtboxa se smijesta u dat. promjenljivu i poziva se funkcija za import excelovog fajla. Kod mi puca na liniji db.execute strSql i javlja mi gresku run-time 3075 synthax error in query expression '0:00:00WHERE tempPok.Datum Is Null'. Nije mi jasno kako da mi promjenljiva dat ima vrijednost 0:00:00?
Kod forme:
Public Sub cmdOK_Click()
Dim dat As Date
dat = CDate(Me.txtDatIzb)
Call UcitajPok
DoCmd.Close
End Sub
Kod funkcije:
Function UcitajPok()
Dim ul As String
Dim dat As Date
Dim db As Database
Dim strSql As String
Set db = CurrentDb
ul = InputBox("Unesite putanju do datoteke koju importujete(txt)", "Import podataka")
'On Error GoTo gres
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, "tempPok", ul
' DoCmd.TransferSpreadsheet, "POK", "pokretni", ul
strSql = "UPDATE tempPok Set tempPok.datum = " & dat & "WHERE tempPok.datum Is Null;"
db.Execute strSql
db.Execute "INSERT into pokretni (add,naziv,staro,novo,razlika,datum) select f1,f2,f3,f4,f5,datum from tempPok;"
db.Execute "DELETE pokretni.* from pokretni WHERE pokretni.add Is Null;"
db.Execute "UPDATE pokretni SET pokretni.staro = 0 where pokretni.staro Is Null;"
db.Execute "DELETE tempPok.* from tempPok ;"
GoTo kraj
gres:
MsgBox "Putanja nije ispravno unijeta!", vbCritical, "Poruka"
kraj:
Exit Function
End Function
Kod forme:
Public Sub cmdOK_Click()
Dim dat As Date
dat = CDate(Me.txtDatIzb)
Call UcitajPok
DoCmd.Close
End Sub
Kod funkcije:
Function UcitajPok()
Dim ul As String
Dim dat As Date
Dim db As Database
Dim strSql As String
Set db = CurrentDb
ul = InputBox("Unesite putanju do datoteke koju importujete(txt)", "Import podataka")
'On Error GoTo gres
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, "tempPok", ul
' DoCmd.TransferSpreadsheet, "POK", "pokretni", ul
strSql = "UPDATE tempPok Set tempPok.datum = " & dat & "WHERE tempPok.datum Is Null;"
db.Execute strSql
db.Execute "INSERT into pokretni (add,naziv,staro,novo,razlika,datum) select f1,f2,f3,f4,f5,datum from tempPok;"
db.Execute "DELETE pokretni.* from pokretni WHERE pokretni.add Is Null;"
db.Execute "UPDATE pokretni SET pokretni.staro = 0 where pokretni.staro Is Null;"
db.Execute "DELETE tempPok.* from tempPok ;"
GoTo kraj
gres:
MsgBox "Putanja nije ispravno unijeta!", vbCritical, "Poruka"
kraj:
Exit Function
End Function