Notifications
Clear all

Contar quantidades de registros do banco de dados

4 Posts
1 Usuários
0 Reactions
2,470 Visualizações
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom dia pessoal,

Uso a macro abaixo pra trazer algumas informação de um banco em acess para uma listbox, más gostaria que tivesse uma LABEL que me mostrasse a quantidade de registros listados.

Public cn As ADODB.Connection
Public rs As ADODB.Recordset

Sub conecta()

Set cn = New ADODB.Connection

cn.connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.Path & "/PENDENCIAS_PGP.mdb"
cn.Open

Set rs = New ADODB.Recordset

End Sub
'====================================================== módulo =============================================================

Public Sub atualiza_mailling()
Dim sql As String
Dim i As Integer

Call conecta

sql = "SELECT * FROM TRATATIVA where analista = '" & FRM_PRINCIPAL.cb_operador.Value & "' and tratado = 'NÂO'"

'gera o recordset para o sql sobre a conexao definida
rs.Open sql, cn

i = 2
FRM_PRINCIPAL.ListBox2.ColumnCount = rs.Fields.Count
FRM_PRINCIPAL.ListBox2.Column = rs.GetRows(rs.RecordCount)

If Not rs.EOF Then
Do While Not rs.EOF
Range("A" & i).Value = rs(1)
Range("B" & i).Value = rs(2)
rs.MoveNext
i = i + 1
Loop
End If
cn.Close
End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/06/2010 5:21 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caio faça assim

dim rsCount as ADODB.recordset
rsCount.open "Select Count(SeuCampo) As Total from Tratativa", cn
msgbox "O Total de Regsitros é " & rs(0)

Você pode escolher qualquer campo da tabela e substituir por SeuCampo, assim este recordset retornará a quantidade de registros.

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/06/2010 6:28 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Funcionou mesmo usei:

rs.Open "Select Count(analista) As Total from Tratativa", cn
MsgBox "O Total de Regsitros é " & rs(0)

más tenho 2 duvidas.

Onde exatamente insiro esse código? pq fiz alguns tentes ele me restorna o quantidade más não faz a consulta devo estar colocando no lugar errado.

Essa query usei para trazer todos os registro onde o campo analista = "X" gostaria de contar quando registros foram achados usando esse parametro, pois essa contagm que você me passou pelo que eu intendi ele vai contar a quantidade total de registros da tbl não é?

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/06/2010 8:36 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Brunosl

Fazendo assim coonsegui, contar registros usando um crtério.

sql = "Select Count(CAMPO) from TABELA where CAMPO = "CRITÈRIO"
rs.Open sql, cn

TKS!

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 23/06/2010 1:09 pm