wir hatten in der Schule eine Aufgabe, mit Visual Basic eine Datenbank in Access anzusteuern.
Also es geht darum, das eine Tabelle erzeugt wird, in der die Werte "g1" bis "g7" als Single eingegeben werden sollen. Zusätzlich soll dann der Mittelwert "N" ausgerechnet weren, das gleiche auch mit der "Varianz" und der "Standardabweichung".
Das Beispiel war, das es um eine Verkehrsberuhigte Zohne geht, in der mehrere Autofahrer etwas schneller als erlaubt gefahren sind. Dabei wurde ist vom gemessen "km/h"-Wert noch eine Mess-Fehlertolleranz von 5% abzuziehen. Und noch einmal 10% von der Geschwindigkeit, die dann als Neuwert raus kommt.
Ich glaube im Code sieht man das besser, deshalb kopier ich den ma eben rein:
Code: Alles auswählen
Option Compare Database
Option Explicit
Private Sub Berechnen_Click()
Dim kfeld(10) As Single
Dim korfled(10) As Single
Dim Summe As Single
Dim Summe2 As Single
Dim i As Single
Dim Zaehler As Single
Dim Zaehler2 As Single
'g-Werte aus dem Formular übertragen
For i = 1 To N
kfeld(i) = Me("g" & i) 'der Variable kfeld(i) werden
next i 'die Werte aus der Tabelle zugewiesen.
'5% Fehlertolleranz abziehen
For i = 1 To N
korfeld(i) = kfeld(i) - kfeld(i) / 100 * 5
'hier müsste dann eine Ausgabe auf 7 neue Felder im Formular gemacht
'werden. Dieses müsste eigentlich mit "Me("kg" & 1) = korfeld(i)"
'doch hierbei ist ein Fehler. Denn der Debugger gibt dann immer eine
'Meldung aus.
Next i
'Mittelwert berechnen
For i = 1 To N
Summe = Summe + korfeld(i)
Next i
Mittelwert = Summe / N
'Varianz berechnen
For i = 1 To N
Summe2 = Summe2 + (korfeld(i) - Mittelwert) ^ 2
Next i
Varianz = Summe2 / N
'Standardabweichung
Standardabweichung = Sqr(Varianz)
'Abfrage zu schnell
For i = 1 To N
If korfeld(i) + (korfeld(i) / 10) > 33 Then
Zaehler = Zaehler + 1
End If
Next i
MsgBox "Es fahren " & Zaehler & " Fahrer zu schnell."
End Sub
Freu mich auf jede Hilfe, die ich erhalten kann und vielen Dank schon einmal im vornerein.
Gruß ChrizL