PROBLEMA COM INPUTBOX

COQUITO 24/09/2015 16:09:30
#451799
Olá pessoal.

preciso de uma ajuda grande, estou tentando registrar dados com INPUTBOX, porem ele me está dando erro no registro alguém de vcs pode me ajudar onde é qe estou falhando?

veja o codigo


Dim nomegrupo As String
Dim codgrupo As String

nomegrupo = InputBox([Ô]Digíte o nome do novo grupo[Ô], [Ô]cadastro grupo[Ô])
codgrupo = InputBox([Ô]Digíte Um código do Grupo[Ô], [Ô]cadastro grupo[Ô])
If nomegrupo < 3 Or codgrupo = [Ô][Ô] Then
MsgBox([Ô]Existem Campos de Preenchimento Obrigatórios[Ô], MsgBoxStyle.Information, [Ô]Arimuya - Projetos T.I.[Ô])
Else

Using cn As OleDbConnection = conectarbancodados() [ô]conexao do banco de dados
Try
cn.Open()
Dim sql As String = [Ô]Insert Into grupocontatos(cod_grupo,nomegrupo) Values (?,?)[Ô]
Dim cmd As OleDbCommand = New OleDbCommand(sql, cn)
cmd.Parameters.Add(New OleDbParameter([Ô]@cod_grupo[Ô], codgrupo))
cmd.Parameters.Add(New OleDbParameter([Ô]@nomegrupo[Ô], nomegrupo))
cmd.ExecuteNonQuery()
MsgBox([Ô]Dados Registrado com Sucesso. ![Ô], MsgBoxStyle.Information, [Ô]cadastro grupo[Ô])
Catch ex As Exception
MsgBox(ex.Message)
Finally
cn.Close()
End Try
End Using
End If
GUIMORAES 24/09/2015 16:14:30
#451801
Qual é o erro que está retornando?

Verifique se a alteração abaixo vai resolver.
  

Dim sql As String = [Ô]Insert Into grupocontatos(cod_grupo,nomegrupo) Values (@cod_grupo,@nomegrupo)[Ô]
Dim cmd As OleDbCommand = New OleDbCommand(sql, cn)
cmd.Parameters.Add(New OleDbParameter([Ô]@cod_grupo[Ô], codgrupo))
cmd.Parameters.Add(New OleDbParameter([Ô]@nomegrupo[Ô], nomegrupo))
cmd.ExecuteNonQuery()

COQUITO 24/09/2015 16:47:40
#451805
ele me esta devolvendo este erro, mesmo alterando

GUIMORAES 24/09/2015 16:52:54
#451806
Resposta escolhida
experimenta fazer assim.

  


If nomegrupo.Length < 3 Or codgrupo.ToString() = [Ô][Ô] Then



COQUITO 24/09/2015 17:28:04
#451808
Citação:

:
experimenta fazer assim.

  


If nomegrupo.Length < 3 Or codgrupo.ToString() = [Ô][Ô] Then






Sem chance problema ainda persiste, tentei tambem tirar as combinações das regras mesmo assim nao deu certo
KERPLUNK 24/09/2015 17:53:57
#451810
Leia a mensagem, ela diz tudo sobre o seu problema. Você tentou converter a string [Ô]ka[Ô] em valor numérico e isso não é possível. Não foi uma conversão explícita, mas vai gerar erro porque o tipo retornado por inputbox é invariavelmente string e mesmo que você digite um número, vai ser uma string com o número. O que você tem que fazer é usar um directcast para tentar converter o valor digitado em tipo numérico.
KERPLUNK 24/09/2015 17:56:28
#451811
E uma dica, não use linguagens diferentes do inglês no visual studio, como no seu caso, o espanhol. De nada adianta você mudar a linguagem se não ler o que as mensagens te dizem...
JABA 24/09/2015 18:32:54
#451812
Citação:

If nomegrupo.Length < 3 Or codgrupo.ToString() = [Ô][Ô] Then



ARIMUYA, o Guimoraes123 está correto, e muito provavelmente o erro agora deve ser outro.
FOXMAN 24/09/2015 22:01:16
#451815
Uma informação bem simples, básica e objetiva.

nomegrupo < 3

é completamente diferente de :

If [Ô]nomegrupo[Ô] < [Ô]3[Ô]

Cuidado com comparações/condicionais, elas sempre serão diferentes caso o tipo de dados também sejam diferentes.

3 é != [Ô]3[Ô]
KERPLUNK 24/09/2015 23:02:43
#451816
Pois é FOXMAN, foi o que tentei dizer...
JABA 25/09/2015 01:16:27
#451817
Acredito que o erro dele esteja na parte do [Ô]Else[Ô] agora. Retirei o [Ô]cn.Close()[Ô], pois isso já acontece no fechamento da cláusula [Ô]Using[Ô], e fiz um Casting no cod_grupo, como foi citado pelo KERPLUNK E FOXMAN.

        Dim nomegrupo As String
Dim codgrupo As String

nomegrupo = InputBox([Ô]Digíte o nome do novo grupo[Ô], [Ô]cadastro grupo[Ô])
codgrupo = InputBox([Ô]Digíte Um código do Grupo[Ô], [Ô]cadastro grupo[Ô])

If nomegrupo.Length < 3 Or codgrupo.ToString() = [Ô][Ô] Then
MsgBox([Ô]Existem Campos de Preenchimento Obrigatórios[Ô], MsgBoxStyle.Information, [Ô]Arimuya - Projetos T.I.[Ô])
Else

Using cn As OleDbConnection = conectarbancodados() [ô]conexao do banco de dados
Try
Dim sql As String = [Ô]Insert Into grupocontatos(cod_grupo,nomegrupo) Values (@cod_grupo,@nomegrupo)[Ô]
Dim cmd As OleDbCommand = New OleDbCommand(sql, cn)
cmd.Parameters.Add(New OleDbParameter([Ô]@cod_grupo[Ô], Cint(codgrupo)))
cmd.Parameters.Add(New OleDbParameter([Ô]@nomegrupo[Ô], nomegrupo))
cmd.ExecuteNonQuery()
MsgBox([Ô]Dados Registrado com Sucesso. ![Ô], MsgBoxStyle.Information, [Ô]cadastro grupo[Ô])
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Using
End If
Página 1 de 2 [12 registro(s)]
Tópico encerrado , respostas não são mais permitidas