Chamuanza Posted November 15, 2016 at 05:37 PM Report #600537 Posted November 15, 2016 at 05:37 PM Um Bem Aja a Todos Agradeço desde já a ajuda Tenho um ciclo sobre uma Listbox para fazer a contagem de determinados valores segundo o código abaixo. Sucede que ao utilizar >= ou <= o contador não funciona. Se utilizar apenas o sinal = já funciona. Podem esclarecer-me sobre o assunto? Private Sub Jogador2_Jogar() Dim ContaCarta As Integer = 0 For Y As Integer = 0 To ListBox2.Items.Count - 1 If ListBox2.Items.Item(Y).ToString >= 14 Or ListBox2.Items.Item(Y).ToString <= 26 Then ContaCarta += 1 End If Next End Sub
acao Posted November 15, 2016 at 06:31 PM Report #600539 Posted November 15, 2016 at 06:31 PM boas testa assim: If (ListBox2.Items.Item(Y).ToString >= 14) Or (ListBox2.Items.Item(Y).ToString <= 26) Then porque dizes isto «Sucede que ao utilizar >= ou <= o contador não funciona.»? já viste se os valores dos parâmetros estão corretos e não faz nada? coloca breakpoints, corre o código, coloca o rato sobre as variáveis e depura o código. cumps acao
Gnrtuga Posted November 15, 2016 at 07:20 PM Report #600540 Posted November 15, 2016 at 07:20 PM Boas, não sei se estou a ver mal (já há muito tempo que não mexo nisto) mas não estás a converter para string e só depois fazes a comparação? Esse tipo de comparação pode ser com Strings? Não tem que ser com Integers ou algo parecido? Experimenta comparar antes de converteres para String. Boa sorte. Férias! Estou por aqui: http://maps.google.p...001549&t=h&z=20 (a bulir claro está!) Nunca mais é verão outra vez.. :)
Chamuanza Posted November 15, 2016 at 07:56 PM Author Report #600543 Posted November 15, 2016 at 07:56 PM Obrigado pela atenção acao quanto ao problema continua na mesma. Perguntas porque eu digo «Sucede que ao utilizar >= ou <= o contador não funciona.»? Porque com este código funciona If ListBox2.Items.Item(Y) = 14 Or ListBox2.Items.Item(Y) = 15 Or ListBox2.Items.Item(Y) = 16 Or ListBox2.Items.Item(Y) = 17 Or ListBox2.Items.Item(Y) = 18 Or ListBox2.Items.Item(Y) = 19 _ Or ListBox2.Items.Item(Y) = 20 Or ListBox2.Items.Item(Y) = 21 Or ListBox2.Items.Item(Y) = 22 Or ListBox2.Items.Item(Y) = 23 Or ListBox2.Items.Item(Y) = 24 Or ListBox2.Items.Item(Y) = 25 _ Or ListBox2.Items.Item(Y) = 26 Then ContaCarta += 1 End If
acao Posted November 15, 2016 at 11:23 PM Report #600547 Posted November 15, 2016 at 11:23 PM 3 horas atrás, Gnrtuga disse: Boas, não sei se estou a ver mal (já há muito tempo que não mexo nisto) mas não estás a converter para string e só depois fazes a comparação? Esse tipo de comparação pode ser com Strings? Não tem que ser com Integers ou algo parecido? Experimenta comparar antes de converteres para String. Boa sorte. è isso estás a converter para string, converte para int , usa a função Cint ou toInt() ou se assegurares que a listbox é numérica podes simplemente tirar o toString para assegurar que é numérico deves usar a função «isnumeric» cumps acao
Chamuanza Posted November 16, 2016 at 03:07 PM Author Report #600563 Posted November 16, 2016 at 03:07 PM (edited) RESOLVIDO Estava a usar mal o parametro If ListBox2.Items.Item(Y) >= 1 And ListBox2.Items.Item(Y) <= 13 Then ContaCarta += 1 End If Edited November 24, 2016 at 01:17 PM by Chamuanza Resolvido
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now