Запрос для экспорта в форму |
Private Sub Кнопка93_Click() Dim XL As Object, XLT As Object, o As Object, s As String, newrow As Object, cell As String Dim cn As ADODB.Connection, rsd As ADODB.Recordset Dim i As Integer, Rowss As Integer, numrow As Integer Dim strSQL As String Set XL = CreateObject("excel.application") Set cn = CurrentProject.Connection Set rsd = New ADODB.Recordset strSQL = "SELECT CDate(FormatDateTime(uchet.time_podachi,2)) AS data, uchet.time_podachi, voditeli.fio, voditeli.grz, gp.gp, uchet.stoimost_za_chas, uchet.[kol-vo_chasov] AS РабЧасы, [kol-vo_chasov]*[stoimost_za_chas] AS StoimSmeni, mashruti.march FROM mashruti RIGHT JOIN (voditeli RIGHT JOIN (gp RIGHT JOIN (kompany RIGHT JOIN uchet ON kompany.id_komp = uchet.id_komp) ON gp.id_gp = uchet.id_gp) ON voditeli.id_vod = uchet.id_vod) ON mashruti.id_march = uchet.marchrut WHERE ((kompany.nazv='" & Me.ПолеСоСписком66 & "') AND (cdate(FormatDateTime(uchet.time_podachi,2))>='" & Me.Поле79 & "' And Cdate(FormatDateTime(uchet.time_podachi,2))<='" & Me.Поле81 & "'))" rsd.Open strSQL, cn, adOpenKeyset, adLockReadOnly Set XLT = XL.Workbooks.Add Set o = XLT.Worksheets("Лист1") Rowss = 5 numrow = 1 XLT.Worksheets("Лист1").[b3] = "ООО """ & Me.ПолеСоСписком66 & """" XLT.Worksheets("Лист1").[h3] = "Счет № " & Me.Поле74 & "" XLT.Worksheets("Лист1").[b2] = "За период с " & Me.Поле79 & " по " & Me.Поле81 & "" While Not (rsd.EOF) If Rowss >= 2 Then XLT.Worksheets("Лист1").Rows(Rowss).Insert cell = "a" & Rowss XLT.Worksheets("Лист1").Range(cell) = numrow cell = "b" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("data").Value cell = "d" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("fio").Value cell = "c" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("grz").Value cell = "e" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("gp").Value cell = "f" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("stoimost_za_chas").Value cell = "g" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("РабЧасы").Value cell = "h" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("StoimSmeni").Value cell = "i" & Rowss XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("march").Value Rowss = Rowss + 1 rsd.MoveNext Else cell = "a" & Rowss XLT.Worksheets("Лист1").Range(cell) = numrow Rowss = Rowss + 1 rsd.MoveNext End If numrow = numrow + 1 Wend o.Cells(Rowss, 7) = "Итого" o.Cells(Rowss, 8).Formula = "=sum(h5:h" & Rowss - 1 & ")" o.Cells(Rowss, 9) = "р." XL.Visible = True Set XL = Nothing Set XLT = Nothing Set newrow = Nothing End Sub
SELECT CDate(FormatDateTime([time_podachi],2)) AS data, voditeli.fio, voditeli.grz, gp.gp, uchet.stoimost_za_chas, uchet.[kol-vo_chasov] AS РабЧасы, [kol-vo_chasov]*[stoimost_za_chas] AS StoimSmeni, mashruti.march, uchet.time_podachi FROM mashruti RIGHT JOIN (voditeli RIGHT JOIN (gp RIGHT JOIN (kompany RIGHT JOIN uchet ON kompany.id_komp = uchet.id_komp) ON gp.id_gp = uchet.id_gp) ON voditeli.id_vod = uchet.id_vod) ON mashruti.id_march = uchet.marchrut GROUP BY CDate(FormatDateTime([time_podachi],2)), voditeli.fio, voditeli.grz, gp.gp, uchet.stoimost_za_chas, uchet.[kol-vo_chasov], [kol-vo_chasov]*[stoimost_za_chas], mashruti.march, uchet.time_podachi, kompany.nazv HAVING (((CDate(FormatDateTime([time_podachi],2)))>=[Forms]![uchet]![Поле79] And (CDate(FormatDateTime([time_podachi],2)))<=[Forms]![uchet]![Поле81]) AND ((kompany.nazv)=[Forms]![uchet]![ПолеСоСписком66]));
http://www.sql.ru/forum/1184430/zapros-dlya-eksporta-v-formu
Комментировать | « Пред. запись — К дневнику — След. запись » | Страницы: [1] [Новые] |