Ir ao conteúdo

duvida program do vb 6


fefenandu

Posts recomendados

Postado

:lol: Por favor eu fiz esse programa mas esta dando erro... tenho certeza que o calculo esta certo porque ja testei diversas vzs mas sempre qndu eu mexo nos end if ou da certo em um ou no outro...

por favor m ajudem!!

obrigado desde ja ^^

Private Sub calculo_Click()

Dim d As Integer 'd vai receber o valor digitado no campo dia

Dim m As Integer 'm vai receber o valor digitado no campo mês

Dim calc As Integer 'calc vai ser uma função que fará o calculo da porcentagem

Dim result As Integer 'result receberá o resultado do calc

Dim ptg As String 'ptg sendo strig é para pode colocar o sinal de % do lado do número

d = dia.Text 'recebe o que foi digitado no campo dia

m = mes.Text 'recebe o que foi digitado no campo mês

If (d < 1) Then 'se o dia digitado for menor que 0 da erro

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um dia válido"

Else 'se o dia não for menor que zero...

If (m = 9 Or m = 11) Then 'testa... se mes for 9 ou 11 não pode ter + que 30 dia senão da erro

If (d > 30) Then

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um dia válido"

Else 'se mes não for 9 ou 11

If (m = 10 Or m = 12) Then 'testa se o mes for 10 ou 12 não pode ter + que 31 dias senão da erro

If (d > 31) Then

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um dia válido"

Else 'senaum der erro nem nada vai pra ca (na teoria xP)

Select Case m 'se mes for...

Case 9 ' 9... faz o calculo louco de porcentagem (isso nun importa... e assim vai)...

calc = (m - 9) * 30 + d

result = calc

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case 10

calc = (m - 9) * 30 + d

result = calc

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case 11

calc = (m - 9) * 30 + 1 + d

result = calc

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case 12

calc = (m - 9) * 30 + 1 + d

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case Else 'se não for nenhum desses meses da erro =D teoricamente

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um mês entre 9(set) a 12(dez)"

mes.Text = " "

mes.SetFocus

End Select

End If

End If

End If

End If

End If

End Sub

Private Sub dia_Change()

d = dia.Text

End Sub

Private Sub mes_Change()

m = mes.Text

End Sub

* Eu acho que o problema esta nos else e end if...

por favor me ajudem!!!

  • 2 semanas depois...
Postado

o problema são os end if que estão todos fora de lugar. Acredito q ainda esta faltando algumas partes do código, mas tenta a partir disso..

Private Sub calculo_Click()

Dim d As Integer 'd vai receber o valor digitado no campo dia

Dim m As Integer 'm vai receber o valor digitado no campo mês

Dim calc As Integer 'calc vai ser uma função que fará o calculo da porcentagem

Dim result As Integer 'result receberá o resultado do calc

Dim ptg As String 'ptg sendo strig é para pode colocar o sinal de % do lado do número

d = dia.Text 'recebe o que foi digitado no campo dia

m = mes.Text 'recebe o que foi digitado no campo mês

If (d < 1) Then 'se o dia digitado for menor que 0 da erro

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um dia válido"

Else 'se o dia não for menor que zero...

If (m = 9 Or m = 11) Then 'testa... se mes for 9 ou 11 não pode ter + que 30 dia senão da erro

If (d > 30) Then

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um dia válido"

End If

End If

End If

'se mes não for 9 ou 11

If (m = 10 Or m = 12) Then 'testa se o mes for 10 ou 12 não pode ter + que 31 dias senão da erro

If (d > 31) Then

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um dia válido"

Else 'senaum der erro nem nada vai pra ca (na teoria xP)

Select Case m 'se mes for...

Case 9 ' 9... faz o calculo louco de porcentagem (isso nun importa... e assim vai)...

calc = (m - 9) * 30 + d

result = calc

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case 10

calc = (m - 9) * 30 + d

result = calc

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case 11

calc = (m - 9) * 30 + 1 + d

result = calc

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case 12

calc = (m - 9) * 30 + 1 + d

result = (calc * 100) / 122

ptg = result

resultado.Caption = ptg + "%"

Case Else 'se não for nenhum desses meses da erro =D teoricamente

MsgBox "Erro", 5, "error"

resultado.Caption = "Digite um mês entre 9(set) a 12(dez)"

mes.Text = " "

mes.SetFocus

End Select

End If

End If

End Sub

Postado

Ola

Testei o codigo e não encontrei nenhum problema.

Com relação ao cálculo, você preve somente os meses 9, 10, 11 e 12. E os outros? e se o ano for bisexto ou não fevereiro vai ter 28 ou 29. e ai?

Este codigo em seu projeto está identado? Foi a unica coisa que eu fiz, pois estava uma bagunça total. rsrs

Me mande o projeto compactado para que eu possa lhe ajudar melhor.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!