G
gatarossi
Dear all,
The code below brings the information form access database... I want
now that it bring the data from an excel sheet...
How can I transform this code for it?
Sub retorna_valores_grafico_det()
Dim adoconn As ADODB.Connection
Dim adors As ADODB.Recordset
Dim sql As String
Dim filenm As String
Dim xlsht As Excel.Worksheet
Dim lin As Long
Dim col As Long
Dim x As Variant
Set xlsht = Sheets("gráfico")
Set x = Cells(4, 2)
filenm = ThisWorkbook.Path & "\dados.mdb"
contador = 3
Do Until contador = 9
Select Case x
Case "OR"
sql = "SELECT Sum(informacoes_receita.orders_received) AS
SomaDeorders_received "
sql = sql & "FROM segmento INNER JOIN (periodo INNER JOIN
(centro_negocio INNER JOIN informacoes_receita ON
centro_negocio.codigo_centro = informacoes_receita.codigo_centro) ON
periodo.ano_mes = informacoes_receita.ano_mes) ON
segmento.codigo_segmento = centro_negocio.codigo_segmento "
sql = sql & "GROUP BY periodo.ano_trimestre, segmento.codigo_segmento,
informacoes_receita.tipo, informacoes_receita.real_forec "
sql = sql & "HAVING (((periodo.ano_trimestre)='" & Cells(3, contador)
& "') "
sql = sql & "AND ((segmento.codigo_segmento)='" & Cells(2, 2) & "') "
sql = sql & "AND ((informacoes_receita.tipo)='" & Cells(5, 2) & "') "
sql = sql & "AND ((informacoes_receita.real_forec)='" & Cells(2,
contador) & "')) ;"
Call getCn(adoconn, adors, sql, filenm, "", "")
xlsht.Cells(4, contador).CopyFromRecordset adors
Case "NI"
sql = "SELECT Sum(informacoes_receita.net_invoice) AS
SomaDeorders_received "
sql = sql & "FROM segmento INNER JOIN (periodo INNER JOIN
(centro_negocio INNER JOIN informacoes_receita ON
centro_negocio.codigo_centro = informacoes_receita.codigo_centro) ON
periodo.ano_mes = informacoes_receita.ano_mes) ON
segmento.codigo_segmento = centro_negocio.codigo_segmento "
sql = sql & "GROUP BY periodo.ano_trimestre, segmento.codigo_segmento,
informacoes_receita.tipo, informacoes_receita.real_forec "
sql = sql & "HAVING (((periodo.ano_trimestre)='" & Cells(3, contador)
& "') "
sql = sql & "AND ((segmento.codigo_segmento)='" & Cells(2, 2) & "') "
sql = sql & "AND ((informacoes_receita.tipo)='" & Cells(5, 2) & "') "
sql = sql & "AND ((informacoes_receita.real_forec)='" & Cells(2,
contador) & "')) ;"
Call getCn(adoconn, adors, sql, filenm, "", "")
xlsht.Cells(4, contador).CopyFromRecordset adors
Case "GM"
sql = "SELECT Sum(informacoes_receita.gross_margin) AS
SomaDeorders_received "
sql = sql & "FROM segmento INNER JOIN (periodo INNER JOIN
(centro_negocio INNER JOIN informacoes_receita ON
centro_negocio.codigo_centro = informacoes_receita.codigo_centro) ON
periodo.ano_mes = informacoes_receita.ano_mes) ON
segmento.codigo_segmento = centro_negocio.codigo_segmento "
sql = sql & "GROUP BY periodo.ano_trimestre, segmento.codigo_segmento,
informacoes_receita.tipo, informacoes_receita.real_forec "
sql = sql & "HAVING (((periodo.ano_trimestre)='" & Cells(3, contador)
& "') "
sql = sql & "AND ((segmento.codigo_segmento)='" & Cells(2, 2) & "') "
sql = sql & "AND ((informacoes_receita.tipo)='" & Cells(5, 2) & "') "
sql = sql & "AND ((informacoes_receita.real_forec)='" & Cells(2,
contador) & "')) ;"
Call getCn(adoconn, adors, sql, filenm, "", "")
xlsht.Cells(4, contador).CopyFromRecordset adors
End Select
contador = contador + 1
Loop
adors.Close
adoconn.Close
Set adors = Nothing
Set adoconn = Nothing
Set xlsht = Nothing
End Sub
Thanks in advance!
André.
The code below brings the information form access database... I want
now that it bring the data from an excel sheet...
How can I transform this code for it?
Sub retorna_valores_grafico_det()
Dim adoconn As ADODB.Connection
Dim adors As ADODB.Recordset
Dim sql As String
Dim filenm As String
Dim xlsht As Excel.Worksheet
Dim lin As Long
Dim col As Long
Dim x As Variant
Set xlsht = Sheets("gráfico")
Set x = Cells(4, 2)
filenm = ThisWorkbook.Path & "\dados.mdb"
contador = 3
Do Until contador = 9
Select Case x
Case "OR"
sql = "SELECT Sum(informacoes_receita.orders_received) AS
SomaDeorders_received "
sql = sql & "FROM segmento INNER JOIN (periodo INNER JOIN
(centro_negocio INNER JOIN informacoes_receita ON
centro_negocio.codigo_centro = informacoes_receita.codigo_centro) ON
periodo.ano_mes = informacoes_receita.ano_mes) ON
segmento.codigo_segmento = centro_negocio.codigo_segmento "
sql = sql & "GROUP BY periodo.ano_trimestre, segmento.codigo_segmento,
informacoes_receita.tipo, informacoes_receita.real_forec "
sql = sql & "HAVING (((periodo.ano_trimestre)='" & Cells(3, contador)
& "') "
sql = sql & "AND ((segmento.codigo_segmento)='" & Cells(2, 2) & "') "
sql = sql & "AND ((informacoes_receita.tipo)='" & Cells(5, 2) & "') "
sql = sql & "AND ((informacoes_receita.real_forec)='" & Cells(2,
contador) & "')) ;"
Call getCn(adoconn, adors, sql, filenm, "", "")
xlsht.Cells(4, contador).CopyFromRecordset adors
Case "NI"
sql = "SELECT Sum(informacoes_receita.net_invoice) AS
SomaDeorders_received "
sql = sql & "FROM segmento INNER JOIN (periodo INNER JOIN
(centro_negocio INNER JOIN informacoes_receita ON
centro_negocio.codigo_centro = informacoes_receita.codigo_centro) ON
periodo.ano_mes = informacoes_receita.ano_mes) ON
segmento.codigo_segmento = centro_negocio.codigo_segmento "
sql = sql & "GROUP BY periodo.ano_trimestre, segmento.codigo_segmento,
informacoes_receita.tipo, informacoes_receita.real_forec "
sql = sql & "HAVING (((periodo.ano_trimestre)='" & Cells(3, contador)
& "') "
sql = sql & "AND ((segmento.codigo_segmento)='" & Cells(2, 2) & "') "
sql = sql & "AND ((informacoes_receita.tipo)='" & Cells(5, 2) & "') "
sql = sql & "AND ((informacoes_receita.real_forec)='" & Cells(2,
contador) & "')) ;"
Call getCn(adoconn, adors, sql, filenm, "", "")
xlsht.Cells(4, contador).CopyFromRecordset adors
Case "GM"
sql = "SELECT Sum(informacoes_receita.gross_margin) AS
SomaDeorders_received "
sql = sql & "FROM segmento INNER JOIN (periodo INNER JOIN
(centro_negocio INNER JOIN informacoes_receita ON
centro_negocio.codigo_centro = informacoes_receita.codigo_centro) ON
periodo.ano_mes = informacoes_receita.ano_mes) ON
segmento.codigo_segmento = centro_negocio.codigo_segmento "
sql = sql & "GROUP BY periodo.ano_trimestre, segmento.codigo_segmento,
informacoes_receita.tipo, informacoes_receita.real_forec "
sql = sql & "HAVING (((periodo.ano_trimestre)='" & Cells(3, contador)
& "') "
sql = sql & "AND ((segmento.codigo_segmento)='" & Cells(2, 2) & "') "
sql = sql & "AND ((informacoes_receita.tipo)='" & Cells(5, 2) & "') "
sql = sql & "AND ((informacoes_receita.real_forec)='" & Cells(2,
contador) & "')) ;"
Call getCn(adoconn, adors, sql, filenm, "", "")
xlsht.Cells(4, contador).CopyFromRecordset adors
End Select
contador = contador + 1
Loop
adors.Close
adoconn.Close
Set adors = Nothing
Set adoconn = Nothing
Set xlsht = Nothing
End Sub
Thanks in advance!
André.