kullandığım sorgular
Sub sorgula()
Dim i As Integer
Dim ay As String
Dim songun As Integer
ay = ""
songun = 31
For i = 1 To 12
If i < 10 Then ay = "0" & i
If i = 1 Or i = 3 Or i = 5 Or i = 7 Or i = 8 Or i = 10 Or i = 12 Then songun = 31
If i = 4 Or i = 6 Or i = 9 Or i = 11 Then songun = 30
If i = 2 Then songun = 29
createTable ay
insertInto ay, 1, songun
updateTable ay, "03.01.2020"
updateTable1 ay
updateTable2 ay
Next
End Sub
Sub createTable(ay As String)
Dim dbs As Database
Set dbs = OpenDatabase("egitim.accdb")
dbs.Execute "CREATE TABLE " & "ay" & ay & " (tarihi DATETIME, modu INTEGER, vardia CHAR);"
dbs.Close
End Sub
Sub insertInto(ay As String, ilk As Integer, son As Integer)
Dim dbs As Database
Dim i As Integer
Set dbs = OpenDatabase("egitim.accdb")
For i = ilk To son
dbs.Execute " INSERT INTO " & "ay" & ay & "" _
& "(tarihi, modu, vardia) VALUES " _
& "('" & i & "." & ay & ".2020', '', '');"
Next
dbs.Close
End Sub
Sub updateTable(ay As String, sabitTarih As String)
Dim dbs As Database
Set dbs = OpenDatabase("egitim.accdb")
dbs.Execute "UPDATE " & "ay" & ay & " SET " & "ay" & ay & ".modu = (DateDiff('d','" & sabitTarih & "',[tarihi])) Mod '24';"
dbs.Close
End Sub
Sub updateTable1(ay As String)
Dim dbs As Database
Set dbs = OpenDatabase("egitim.accdb")
dbs.Execute "SELECT " & "ay" & ay & ".tarihi, vardiya.v0816 INTO " & "ayvar" & ay & " FROM " & "ay" & ay & " INNER JOIN vardiya ON " & "ay" & ay & ".modu = vardiya.[mod];"
dbs.Close
End Sub
Sub updateTable2(ay As String)
Dim dbs As Database
Set dbs = OpenDatabase("egitim.accdb")
dbs.Execute "UPDATE " & "ayvar" & ay & " INNER JOIN " & "ay" & ay & " ON " & "ayvar" & ay & ".tarihi = " & "ay" & ay & ".tarihi SET " & "ay" & ay & ".vardia = [v0816];"
dbs.Close
End Sub
@benbendedeilem
Cevapla