Access inicio | | | | | |
Olá,
Seja Bem Vindo ao Blog.

Conecte-se ou registre-se e utilize gratuitamente este equipamento, temos exemplos referente a criação de banco de dados e desenvolvimento de softwares e programas utilizando o Microsoft Access.


Administração do Blog AccessDoProgramador.

Loop para saber a quantidade de um registro especifico entre campos e entre datas

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

12072014

Mensagem 

Loop para saber a quantidade de um registro especifico entre campos e entre datas






Usuário do Fórum MaximoAccess escreveu:Srs. Bom Dia a todos

Estou com a seguinte Dúvida:

Tenho uma Tbl onde constam os campos:

txtcódigo / txtNome / d1 / d2 / d3 / d4

Obs.: Nos campos ( d1 até d4 ) são inseridos números entre 1 e 80

Minha duvida: Como criar uma consulta que me retorne quantas vezes um numero especifico ( 1, por exemplo ) aparece neste intervalo.

Antecipo agradecimentos

Solução proposta por mim:
Criei para contar em todos os campos e registros.
Tente a partir de um clique de um botão:


Dim Rs As DAO.Recordset
Dim i As Integer
Dim Encontrar As Integer
Dim Encontrado As Long
Set Rs = CurrentDb.OpenRecordset("SuaTabela")
Encontrar = 1
Encontrado = 0
For i = 1 To 4
Rs.MoveLast
Rs.MoveFirst
Do While Not Rs.EOF
  If Rs(("d" & i)) = Encontrar Then
       Encontrado = Encontrado + 1
 End If
Rs.MoveNext
Loop
Next i
Rs.Close
If Encontrado > 1 Then
MsgBox "Encontrado " _
     & Encontrado & " ocorrências."
Else
MsgBox "Encontrado " _
     & Encontrado & " ocorrência."
End If
End Sub


Usando entre datas:

Dim Rs As DAO.Recordset
Dim i As Integer
Dim Encontrar As Integer
Dim Encontrado As Long
Dim DataIni As Date
Dim DataFin As Date
Set Rs = CurrentDb.OpenRecordset("SuaTabela")
Encontrar = 1
Encontrado = 0
DataIni = #1/1/2014#
DataFin = #1/1/2015#
For i = 1 To 4
Rs.MoveLast
Rs.MoveFirst
Do While Not Rs.EOF
  If Rs("SeuCampoData") >= DataIni And Rs("SeuCampoData") <= DataFin Then
      If Rs(("d" & i)) = Encontrar Then
          Encontrado = Encontrado + 1
      End If
  End If
Rs.MoveNext
Loop
Next i
Rs.Close
If Encontrado > 1 Then
MsgBox "Encontrado " _
      & Encontrado & " ocorrências."
Else
MsgBox "Encontrado " _
      & Encontrado & " ocorrência."
End If


Acompanhe os demais detalhes no Fórum MaximoAccess pelo link:
Quantidade de registros específicos entre campos.

Abraço a todos! Smile


avatar
Dilson
Facilitador
Facilitador

Brasil


http://www.dadosweb.com

Voltar ao Topo Ir em baixo

- Tópicos similares
Compartilhar este artigo em: diggdeliciousredditstumbleuponslashdotyahoogooglelive

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum