Zahlen sortieren
//Klasse
Option Explicit
Private zahlen As Collection
Property Set neueZahlen(neueZahlen As Collection)
Set zahlen = neueZahlen
End Property
Property Get neueZahlen() As Collection
neueZahlen = zahlen
End Property
Function sortieren_rueckwaerts()
Dim i As Variant
For i = zahlen.Count To 1 Step -1
sortieren_rueckwaerts = zahlen(i)
Debug.Print (sortieren_rueckwaerts)
Next i
End Function
Function sortieren_vorwaerts()
Dim i As Integer
For i = 1 To zahlen.Count
sortieren_vorwaerts = zahlen(i)
Debug.Print (sortieren_vorwaerts)
Next i
End Function
//Modul
Option Explicit
Sub Zahlen_eingabe()
Dim zahlen1 As New Zahlen_Sortieren
Dim zahlen As New Collection
Dim eingabe As String
Dim splitter() As String
eingabe = InputBox("Bitte Zahlen mit , getrennt eingeben")
splitter = split(eingabe, ",")
Dim zahl As Variant
For Each zahl In splitter
zahlen.Add (zahl)
Next zahl
Set zahlen1.neueZahlen = zahlen
Debug.Print ("Rückwärts:")
zahlen1.sortieren_rueckwaerts
Debug.Print ("Vorwärts:")
zahlen1.sortieren_vorwaerts
End Sub
Fahrtenbuch
//Klasse
Option Explicit
Private name As String
Private ersterName As String
Private kennz As Long
Private kilometer As New Collection
Property Get kennzeichen() As Long
kennzeichen = kennz
End Property
Property Let kennzeichen(nummer As Long)
kennz = nummer
End Property
Property Get nachname() As String
nachname = name
End Property
Property Let nachname(neuerName As String)
name = neuerName
End Property
Property Get vorname() As String
vorname = ersterName
End Property
Property Let vorname(neuerName As String)
ersterName = neuerName
End Property
Function kilometerdurchschnitt() As Double
Dim summe As Double
summe = 0#
Dim kilometerstand As Variant
For Each kilometerstand In kilometer
summe = summe + kilometerstand
Next kilometerstand
kilometerdurchschnitt = summe / kilometer.Count
End Function
Public Sub kilometerAdd(kilometer_eingabe As Double)
kilometer.Add kilometer_eingabe
End Sub
Property Get alleKilometer() As Collection
alleKilometer = kilometer
End Property
Property Set alleKilometer(neueKilometer As Collection)
Set kilometer = neueKilometer
End Property
//Modul
Option Explicit
Sub Test()
Dim auto1 As New Student
auto1.kennzeichen = 1111
auto1.nachname = "Wurst"
auto1.vorname = "Hans"
Debug.Print auto1.kennzeichen
Debug.Print auto1.nachname
Debug.Print auto1.vorname
auto1.kilometerAdd (200)
auto1.kilometerAdd (100)
Debug.Print "Erster Durchschnitt"
Debug.Print auto1.kilometerdurchschnitt
Dim neueKilometer As New Collection
neueKilometer.Add (1#)
Set auto1.alleKilometer = neueKilometer
Debug.Print "Zweiter Durchschnitt"
Debug.Print auto1.kilometerdurchschnitt
End Sub
Zahlen sortieren
//Klasse
Option Explicit
Private zahlen As Collection
Property Set neueZahlen(neueZahlen As Collection)
Set zahlen = neueZahlen
End Property
Property Get neueZahlen() As Collection
neueZahlen = zahlen
End Property
Function sortieren_rueckwaerts()
Dim i As Variant
For i = zahlen.Count To 1 Step -1
sortieren_rueckwaerts = zahlen(i)
Debug.Print (sortieren_rueckwaerts)
Next i
End Function
Function sortieren_vorwaerts()
Dim i As Integer
For i = 1 To zahlen.Count
sortieren_vorwaerts = zahlen(i)
Debug.Print (sortieren_vorwaerts)
Next i
End Function
//Modul
Option Explicit
Sub Zahlen_eingabe()
Dim zahlen1 As New Zahlen_Sortieren
Dim zahlen As New Collection
Dim eingabe As String
Dim splitter() As String
eingabe = InputBox("Bitte Zahlen mit , getrennt eingeben")
splitter = split(eingabe, ",")
Dim zahl As Variant
For Each zahl In splitter
zahlen.Add (zahl)
Next zahl
Set zahlen1.neueZahlen = zahlen
Debug.Print ("Rückwärts:")
zahlen1.sortieren_rueckwaerts
Debug.Print ("Vorwärts:")
zahlen1.sortieren_vorwaerts
End Sub
Fahrtenbuch
//Klasse
Option Explicit
Private name As String
Private ersterName As String
Private kennz As Long
Private kilometer As New Collection
Property Get kennzeichen() As Long
kennzeichen = kennz
End Property
Property Let kennzeichen(nummer As Long)
kennz = nummer
End Property
Property Get nachname() As String
nachname = name
End Property
Property Let nachname(neuerName As String)
name = neuerName
End Property
Property Get vorname() As String
vorname = ersterName
End Property
Property Let vorname(neuerName As String)
ersterName = neuerName
End Property
Function kilometerdurchschnitt() As Double
Dim summe As Double
summe = 0#
Dim kilometerstand As Variant
For Each kilometerstand In kilometer
summe = summe + kilometerstand
Next kilometerstand
kilometerdurchschnitt = summe / kilometer.Count
End Function
Public Sub kilometerAdd(kilometer_eingabe As Double)
kilometer.Add kilometer_eingabe
End Sub
Property Get alleKilometer() As Collection
alleKilometer = kilometer
End Property
Property Set alleKilometer(neueKilometer As Collection)
Set kilometer = neueKilometer
End Property
//Modul
Option Explicit
Sub Test()
Dim auto1 As New Student
auto1.kennzeichen = 1111
auto1.nachname = "Wurst"
auto1.vorname = "Hans"
Debug.Print auto1.kennzeichen
Debug.Print auto1.nachname
Debug.Print auto1.vorname
auto1.kilometerAdd (200)
auto1.kilometerAdd (100)
Debug.Print "Erster Durchschnitt"
Debug.Print auto1.kilometerdurchschnitt
Dim neueKilometer As New Collection
neueKilometer.Add (1#)
Set auto1.alleKilometer = neueKilometer
Debug.Print "Zweiter Durchschnitt"
Debug.Print auto1.kilometerdurchschnitt
End Sub
Option Explicit
Sub test()
Dim eingabe As String
Dim zahl1 As New Zahlen_ausgabe
eingabe = InputBox("Bitte die Zahl eingeben")
eingabe = CInt(eingabe)
zahl1.zahlSet = eingabe
zahl1.runterzaehlen
End Sub
Option Explicit
Private zahlen As New Collection
Private zahl As Integer
Property Let zahlSet(neueZahl As Integer)
zahl = neueZahl
End Property
Property Get zahlGet() As Integer
zahlGet = zahl
End Property
Function runterzaehlen()
Dim i As Integer
For i = zahl To 1 Step -1
If i Mod 3 = 0 Then
zahlen.Add (i)
End If
Next i
'Ausgabe'
For i = 1 To zahlen.Count
Debug.Print (zahlen(i))
Next i
End Function