Ir para conteúdo
Fórum Script Brasil

Venom Fireman

Membros
  • Total de itens

    6
  • Registro em

  • Última visita

Sobre Venom Fireman

Venom Fireman's Achievements

0

Reputação

  1. Olá diletos companheiros! Venho até vós novamente com um problema de macros, um não, para falar a verdade dois dele... Vamos ao primeiro? Lá vai... Bem, tenho tentado usar o DateDiff, assim como tentei pelas propriedades do formulário o DifData, em um campo de texto acoplado a uma tabela e também tentei com outro desacoplado, com nenhum funcionou. Segue a maneira como eu estava tentando usar o datediff: Function hora_final() ' Função de retorno de diferença de datas. Dim inicio As String Dim termino As String Dim total As String inicio = Forms!CadManut_Consulta!DataIniAtend termino = Forms!CadManut_Consulta!DataTermAtend DateDiff "dd", inicio, termino End Function Tentei testar assim também e não deu certo: Private Sub TotHrTec_GotFocus() Dim resposta As String resposta = DateDiff("dd", Forms!CadManut_Consulta!DataTermAtend, Forms!CadManut_Consulta!DataIniAtend) MsgBox "resposta", vbOKOnly, "Testando" 'Forms!CadManut_Consulta!TotHrTec.Text = DateDiff("dd", Forms!CadManut_Consulta!DataIniAtend, Forms!CadManut_Consulta!DataTermAtend) End Sub E mais esse também: ' Private Sub DataTermAtend_LostFocus() 'Dim inicio As Date 'Dim termino As Date 'Dim total As Date 'inicio = Forms!CadManut_Consulta!DataIniAtend 'termino = Forms!CadManut_Consulta!DataTermAtend 'Forms!CadManut_Consulta!TotHrTec = DateDiff("hh", "inicio", "termino") ' End Sub Nesse último caso ele deu como "Tipos incompatíveis" se tiro as aspas de inicio e termino o erro passa a ser "Argumento ou chamada de procedimento inválida." Vocês poderiam me ajudar a achar onde está o erro aí? Muito obrigado, senhores!
  2. Bom dia Humm! Como é que se usa o select Case? Até mais!
  3. Mais uma vez aqui estou Elber! Bem, consegui resolver o meu problema um pouco com o que você propôs, claro que não com VBA puro e um pouco com macro... Tentei com VBA puro, chamando o nome dos formulários onde agora ele chama as macros, ele chamava, mas assim que eu digitava algo na caixa de mensagem onde se deve digitar o critério ele dizia que era um argumento inválido ou o tipo de dados solicitado não era compatível com o campo, então fiz algumas alterações no código, usei uma parte do código que o próprio Access escreveu, o que você sugeriu e mais as macros nomeadas e acabou dando certo... Segue abaixo o código para que você veja e entenda o que eu fiz, ok? Desde já muito obrigado pela atenção e pela força! Private Sub consultar_opc_Click() Dim resulta As String resulta = consultas_op.Value ' A variável resulta armazena o valor definido para o grupo de opções ' consultas_op de modo que esse valor possa ser avaliado pelo ' operador lógico If. If resulta = "1" Then ' If avalia o valor e realiza a ação de executar a macro, ' o nome de cada macro deve estar entre aspas dupla e devem ser ' chamadas pelo nome com que foram salvas seguido do ponto e o nome da macro. DoCmd.RunMacro "abrir.abre_area" End If If resulta = "2" Then DoCmd.RunMacro "abrir.abre_bairro" End If If resulta = "3" Then DoCmd.RunMacro "abrir.abre_eng" End If If resulta = "4" Then DoCmd.RunMacro "abrir.abre_ocupa" End If If resulta = "5" Then DoCmd.RunMacro "abrir.abre_proj_ant" End If If resulta = "6" Then DoCmd.RunMacro "abrir.abre_proj_subs" End If If resulta = "7" Then DoCmd.RunMacro "abrir.abre_projeto" End If If resulta = "8" Then DoCmd.RunMacro "abrir.abre_proprietario" End If If resulta = "9" Then DoCmd.RunMacro "abrir.abre_resp_uso" End If If resulta = "10" Then DoCmd.RunMacro "abrir.abre_rua" End If On Error GoTo Err_consultar_opc_Click ' Dim stDocName As String - Colocada como comentário ' stDocName = "abrir" - Colocada como comentário ' DoCmd.RunMacro stDocName - Colocada como comentário ' Todas para ver se o argumento funciona ' Usei essa parte do código que o próprio Access cria para moldar o meu. Exit_consultar_opc_Click: Exit Sub Err_consultar_opc_Click: MsgBox Err.Description Resume Exit_consultar_opc_Click End Sub
  4. Venom Fireman

    Chave Primária

    Complementando o que disse o João, a chave primária serve para você ter registros únicos, em que ao menos um dos campos seja único. Em uma tabela quem que você não precisa dessa exclusividade você não necessitará da chave primária e um campo de autonumeração apesar de poder ser sem duplicação não necessariamente será a chave primária mesmo que tenha todas as características dela.
  5. Olá Elber! Boa tarde e desde já obrigado pela atenção... Primeiro vou rever, como você me orientou, os valores e depois as condições. Quanto ao VBA eu suponho sim que seja mais estável do que as macros e suas condições, só que eu não sei usar o VBA cru, ainda mais porque eu usar um único botão para abrir as 10 consultas separadamente, cada vez que eu apertar o botão ele tem que avaliar qual opção foi marcada e executar a abertura do formulário correspondente à consulta. Ou seja, se usar o VBA já me é complicado, imagina ter que usá-lo com condições IF e avaliando o valor do grupo de opções? rs... Se você puder me ajudar a fazer isso eu parto para o VBA sem problemas.. Vlw...
  6. Olá! Boa noite! Pessoal, acontece da seguinte maneira, eu criei uma macro que abre vários formulários de consulta e cada chamada de um formulário ganhou um nome dentro da macro. O formulário a ser aberto seria definido por um botão de opção em um outro formulário. Como tenho 10 consultas coloquei 10 botões de opção sendo que a eles estão atribuidos valores seqüenciais de 1 a 10. Na minha macro tenho uma condição para cada nome dentro dela que chamaria o formulário específico caso o valor do botão fosse o correspondente. Na macro coloquei a condição assim: nome macro Condição Ação abre_area [Formulários]![abertura_formu]![consultas_op]=1 AbrirFormulário(x) abre_bairro [Formulários]![abertura_formu]![consultas_op]=2 AbrirFormulário(y) ... abre_rua [Formulários]![abertura_formu]![consultas_op]=10 AbrirFormulário(z) E assim por diante para cada valor de botões, onde [consultas_op] é o grupo de botões de opção que receberá o valor do botão selecionado. Para cada valor deveria executar a ação nomeada dentro da macro que tem todas elas. O problema está aí, se eu escolher o primeiro botão ([Formulários]![abertura_formu]![consultas_op]=1) ele funciona e abre a consulta, mas para os demais ele não executa, como se os valores não estivessem sendo atribuidos ao grupo de botões de opção ou como se a macro não estivesse avaliando as condições depois de avaliada a primeira... Sei que o tópico está grande, mas alguém sabe me orientar nesse problema enorme que estou tendo? Muito obrigado pela paciência desde já! Até mais!
×
×
  • Criar Novo...