VBA-Werte Variablen vertausche < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 17:03 Do 30.01.2014 | Autor: | lalissy |
Aufgabe | Sub Vertauschen ()
Dim a As Integer
Dim b As Integer
a= InputBox("Wert für a eingeben")
b=InputBox("Wert für b eingeben")
a=b
b=a
MsgBox("wert für a ist" & a)
MsgBox("wert für b ist"&b)
End Sub |
Hallo,
ich habe die obere Prozedur geschrieben. Wenn ich z.B a=2 setzte und b=3 dann soll am Ende über die MsgBox a=3 und b=2 ausgegeben werden.
Das ist bei der Prozedur aber nicht der Fall, weil ja der Wert von a sofort "verloren geht" und beide Variablen den Wert von b zugewiesen bekommen.
Wie kann man das anders machen? Muss man den Wert in einer extra Variable speichern oder sowas?
Wahrscheinlich ist es echt simpel, aber ich komm einfach nicht drauf >.<
Danke schonmal :)
|
|
|
|
Hallo lalissy,
> Sub Vertauschen ()
>
> Dim a As Integer
> Dim b As Integer
>
> a= InputBox("Wert für a eingeben")
> b=InputBox("Wert für b eingeben")
>
> a=b
> b=a
> MsgBox("wert für a ist" & a)
> MsgBox("wert für b ist"&b)
>
> End Sub
> Hallo,
>
> ich habe die obere Prozedur geschrieben. Wenn ich z.B a=2
> setzte und b=3 dann soll am Ende über die MsgBox a=3 und
> b=2 ausgegeben werden.
> Das ist bei der Prozedur aber nicht der Fall, weil ja der
> Wert von a sofort "verloren geht" und beide Variablen den
> Wert von b zugewiesen bekommen.
>
> Wie kann man das anders machen? Muss man den Wert in einer
> extra Variable speichern oder sowas?
Genau so ist es:
1: |
| 2: | Sub Vertauschen ()
| 3: |
| 4: | Dim a As Integer
| 5: | Dim b As Integer
| 6: | Dim hilf As Integer
| 7: |
| 8: | a= InputBox("Wert für a eingeben")
| 9: | b=InputBox("Wert für b eingeben")
| 10: |
| 11: | hilf=a
| 12: | a=b
| 13: | b=hilf
| 14: |
| 15: | MsgBox("wert für a ist" & a)
| 16: | MsgBox("wert für b ist"&b)
| 17: |
| 18: | End Sub
|
> Wahrscheinlich ist es echt simpel, aber ich komm einfach
> nicht drauf >.<
>
> Danke schonmal :)
Gruss
MathePower
|
|
|
|
|
Hallo!
Die meisten Sprachen kennen für sowas den Befehl
SWAP(a, b)
aber wenn es um eine Übung geht, ist das sicher nicht das gewünschte.
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 19:06 Do 30.01.2014 | Autor: | lalissy |
Danke für die schnelle Antwort!
|
|
|
|