Ich möchte Zahlen in ein Nachrichtenfeld zwischen zwei von mir gewählten Zahlen schreiben. Bei der Überprüfung, ob es sich um gerade Zahlen handelt, müssen sie von der kleinsten bis zur größten Zahl reichen. Die 2 Zahlen müssen positiv und kleiner als 100 sein.
Ich verwende Visual Basic in Excel, habe es aber noch nie zuvor verwendet.
Private Sub CommandButton1_Click()
Dim a, b, P, i As Integer
a = InputBox("Write number from 1 to 100 ")
If a <= 0 Or a >= 100 Then
MsgBox "Wrong input"
Exit Sub
End If
b = InputBox("Write number from 1 to 100 ")
If b <= 0 Or b >= 100 Then
MsgBox "Wrong input"
Exit Sub
End If
For i = a To b
If a <> 0 & a <= b Then
a = a + 1
Else
P = a
a = a + 1
Exit For
End If
Next i
MsgBox P
End Sub
microsoft-excel
Marko Plavanjac
quelle
quelle
Antworten:
Ich würde es ein bisschen anders machen. Sie können dies sicherlich mit einem command_button auslösen. Beachten Sie, dass ich nach geraden Zahlen suche (und Null auch nicht als positive (oder negative) Zahl betrachte).
quelle
vbLf
ist das Zeilenvorschubzeichen; Wenn Sie also ein anderes Trennzeichen verwenden möchten, ändern Sie dies einfach. Wenn Sie von der letzten bis zur ersten Zahl fortfahren möchten, was sich von Ihrer Frage unterscheidet, verwenden Sie einfach dieStep
Argument derFor ... Next
Anweisung mit einem negativen Wert. Ist das Hausaufgabe?For ... Next
Aussage in VBA