ESCREVER NAS CELULAS

FLASHED 03/10/2011 07:13:41
#385707
Boas

este código está certo?

Private Sub prazo_Projecto()

If tempototal > horastotais Then
CurrentDb.Execute [Ô]UPDATE Horas_Projecto SET prazo = Dentro do Prazo[Ô]
ElseIf tempototal < horastotais Then
CurrentDb.Execute [Ô]UPDATE Horas_Projecto SET prazo = Fora do Prazo[Ô]
End If

End Sub

tempototal e horastotais são colunas na tblHoras_Projecto.
Ele executa mas não escreve nada!
ALTAIR148 03/10/2011 07:51:31
#385710
Bom dia,

Amigo não sei ao certo. mas isso ai é VB/VBA, no VB.NET não é bem dessa forma não amigo. Outra coisa você pretender alterar todos os registros da tabela ao mesmo tempo? Se você não passar nenhum Where o seu update iria atualizar todos os registros do seu banco.
Tenta utilizar o exemplo abaixo, é um tópico que encontrei na net e nele explica direitinho como fazer, basta fazer as adaptações.


http://social.msdn.microsoft.com/forums/pt-BR/aspnetpt/thread/aa0f3721-81e1-4568-8205-401b4c2c9b25


Até mais.

FLASHED 03/10/2011 07:55:48
#385713
me desculpe, isso é vb em access.
PEGUDO 03/10/2011 08:00:54
#385715
1º - Se tempototal e horatotais são colunas você deve retorna os valores delas para depois fazer a comparação;
2º - Se o VS não colocou os parênteses automaticamente, você deve fazê-lo: CurrentDb.Execute ([Ô]UPDATE...[Ô])
3º - se a coluna prazo é do tipo text, você deve colocar aspas simples ou apóstrofo: CurrentDb.Execute([Ô]UPDATE Horas_Projecto SET prazo = [ô]Dentro do Prazo[ô] [Ô])

espero que te ajude em alguma coisa.

ALTAIR148 03/10/2011 08:02:00
#385716
Ah sim. bom eu não entendo praticamente nada de vb, só entendo de VB.NET e um pouco de C#. Mas vamos deixar ai acho que tem muita gente que pode lhe ajudar.

Até mais.
FLASHED 03/10/2011 08:31:47
#385722
ficou assim:

Mas eu estou a declarar mal as variáveis né?

Private Sub prazo_Projecto()
tempotota As Double
tempotota = Me.tempototal
horastotai As Double
horastotai = Me.horastotais

If tempototal > horastotais Then
CurrentDb.Execute [Ô]UPDATE Horas_Projecto SET prazo=[ô][Ô] & [Ô]Dentro do Prazo[Ô] & [Ô][ô][Ô]
ElseIf tempototal < horastotais Then
CurrentDb.Execute [Ô]UPDATE Horas_Projecto SET prazo=[ô][Ô] & [Ô]Fora do Prazo[Ô] & [Ô][ô][Ô]
End If

End Sub
PEGUDO 03/10/2011 09:58:30
#385737
[txt-color=#0000f0]If[/txt-color] tempototal > horastotais [txt-color=#0000f0]Then[/txt-color]
CurrentDb.Execute([txt-color=#e80000][Ô]UPDATE Horas_Projecto SET prazo=[ô]Dentro do Prazo[ô] [Ô][/txt-color])
[txt-color=#0000f0]ElseIf[/txt-color] tempototal < horastotais [txt-color=#0000f0]Then[/txt-color]
CurrentDb.Execute([txt-color=#e80000][Ô]UPDATE Horas_Projecto SET prazo=[ô]Fora do Prazo[ô] [Ô][/txt-color])
[txt-color=#0000f0]End If[/txt-color]
FLASHED 03/10/2011 10:18:25
#385740
Escreve o testo mas não faz o if!

Só faz o elseif!
Este código é para access, SQL ;)
FLASHED 03/10/2011 13:10:37
#385775
Ainda não consegui resolver este assunto!

Só me lê um if....
RODRIGOFERRO 03/10/2011 13:14:22
#385778
Mas voce esta testando as duas situações ?

Esta debugando o codigo :?
FLASHED 03/10/2011 13:22:10
#385782
Ele só me lê um dos if! Quero dizer...não faz a lógica dos se's!
Página 1 de 3 [22 registro(s)]
Tópico encerrado , respostas não são mais permitidas