Problem mit If-Anweisung unter vb.net

29/09/2007 - 12:55 von Jörg Klebsattel | Report spam
Hallo Leute,

ich habe da ein Problem mit einer If-Anweisung. Das Programm setzt mir
die Variable Besucher immer auf 11. An was kann das liegen? Ich hoffe,
dass ihr mir helfen könnt.

Grüße
Jörg

Der Code sieht so aus:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
ComboBox1.Items.Add(" ")
ComboBox1.Items.Add("1-500")
ComboBox1.Items.Add("501-1.000")
ComboBox1.Items.Add("1.001-1.500")
ComboBox1.Items.Add("1.501-3.000")
ComboBox1.Items.Add("3.001-6.000")
ComboBox1.Items.Add("6.001-10.000")
ComboBox1.Items.Add("10.001-20.000")
ComboBox1.Items.Add("20.001-30.000")
ComboBox1.Items.Add("30.001-40.000")
ComboBox1.Items.Add("40.001-50.000")
ComboBox1.Items.Add("50.001-60.000")
ComboBox1.SelectedIndex = 0
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click

If ComboBox1.Items.Contains("1-500") Then
besucher = 1
End If

If ComboBox1.Items.Contains("501-1.000") Then
besucher = 2
End If

If ComboBox1.Items.Contains("1.001-1.500") Then
besucher = 3
End If

If ComboBox1.Items.Contains("1.001-1.500") Then
besucher = 3
End If

If ComboBox1.Items.Contains("1.501-3.000") Then
besucher = 4
End If

If ComboBox1.Items.Contains("3.001-6.000") Then
besucher = 5
End If

If ComboBox1.Items.Contains("6.001-10.000") Then
besucher = 6
End If

If ComboBox1.Items.Contains("10.001-20.000") Then
besucher = 7
End If

If ComboBox1.Items.Contains("20.001-30.000") Then
besucher = 8
End If

If ComboBox1.Items.Contains("30.001-40.000") Then
besucher = 9
End If

If ComboBox1.Items.Contains("40.001-50.000") Then
besucher = 10
End If

If ComboBox1.Items.Contains("50.001-60.000") Then
besucher = 11
End If

Label13.Text = besucher
 

Lesen sie die antworten

#1 Herfried K. Wagner [MVP]
29/09/2007 - 13:04 | Warnen spam
"Jörg Klebsattel" schrieb:
ich habe da ein Problem mit einer If-Anweisung. Das Programm setzt mir die
Variable Besucher immer auf 11. An was kann das liegen? Ich hoffe, dass
ihr mir helfen könnt.

Der Code sieht so aus:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
ComboBox1.Items.Add(" ")
ComboBox1.Items.Add("1-500")
ComboBox1.Items.Add("501-1.000")
ComboBox1.Items.Add("1.001-1.500")
ComboBox1.Items.Add("1.501-3.000")
ComboBox1.Items.Add("3.001-6.000")
ComboBox1.Items.Add("6.001-10.000")
ComboBox1.Items.Add("10.001-20.000")
ComboBox1.Items.Add("20.001-30.000")
ComboBox1.Items.Add("30.001-40.000")
ComboBox1.Items.Add("40.001-50.000")
ComboBox1.Items.Add("50.001-60.000")
ComboBox1.SelectedIndex = 0
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click

If ComboBox1.Items.Contains("1-500") Then
besucher = 1
End If

If ComboBox1.Items.Contains("501-1.000") Then
besucher = 2
End If

If ComboBox1.Items.Contains("1.001-1.500") Then
besucher = 3
End If

If ComboBox1.Items.Contains("1.001-1.500") Then
besucher = 3
End If

If ComboBox1.Items.Contains("1.501-3.000") Then
besucher = 4
End If

If ComboBox1.Items.Contains("3.001-6.000") Then
besucher = 5
End If

If ComboBox1.Items.Contains("6.001-10.000") Then
besucher = 6
End If

If ComboBox1.Items.Contains("10.001-20.000") Then
besucher = 7
End If

If ComboBox1.Items.Contains("20.001-30.000") Then
besucher = 8
End If

If ComboBox1.Items.Contains("30.001-40.000") Then
besucher = 9
End If

If ComboBox1.Items.Contains("40.001-50.000") Then
besucher = 10
End If

If ComboBox1.Items.Contains("50.001-60.000") Then
besucher = 11
End If

Label13.Text = besucher



Es liegt daran, daß alle Bedingungen erfüllt sind (die Eintràge existieren
ja alle in der ListBox) und deshalb die letzte Zuweisung 'besucher = 11'
ist.

M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://dotnet.mvps.org/dotnet/faqs/>

Ähnliche fragen