Array-Verarbeitung: ABC-Analyse II

Array-Verarbeitung: ABC-Analyse. Blättern im Array, Speichern von Änderungen in Tabelle
Aufgabe: Mit Schaltflächen < und > soll in der Tabelle geblättert werden. Wird beim Vorwärts-Scrollen das
Ende der Tabelle erreicht, soll eine Meldung ausgegeben werden. Ebenso soll das Ende beim Rückwärts-
Scrollen gemeldet werden.
Im Feld "Kundennummer" soll ein weiteres Feld den Zähler anzeigen.
Das oberste Umsatzfeld soll eingabebereit gemacht werden können.
Const armax = 99
Private KdList(0 To armax) As TKunden
Private hilf As TKunden
Private pos As Integer
Private Type TKunden
KdNr As String * 5
KdUm As Long
End Type
Private Sub Form_Load()
Me.Move (Screen.Width - Me.Width) / 3, (Screen.Height - Me.Height) / 3
cmdRueck.Enabled = False
cmdWeiter.Visible = False
txtKdUm(0).TabStop = False
txtKdUm(0).Locked = True
lblMeld.Caption = "Tabellen- Anfang !"
Call TabLaden
Call TabAnzeigen
End Sub
Private Sub TabLaden()
Dim i As Long
Randomize
For i = 0 To armax
KdList(i).KdNr = Int((99999 - 10000 + 1) * Rnd + 10000)
KdList(i).KdUm = Int((500000 - 5000 + 1) * Rnd + 5000)
Next i
End Sub
Private Sub TabAnzeigen()
Dim i As Integer
For i = 0 To 9
lblKdNr(i).Caption = KdList(pos + i).KdNr
txtKdUm(i).Text = KdList(pos + i).KdUm
lblNr(i).Caption = pos + i
Next i
End Sub
Private Sub cmdFreigabe_Click()
With txtKdUm(0)
.BackColor = RGB(255, 255, 255)
.Locked = False
.TabStop = True
End With
Call settfokus
cmdFreigabe.Visible = False
End Sub
Private Sub settfokus()
With txtKdUm(0)
.SelLength = Len(.Text)
.SetFocus
End With
End Sub
Private Sub txtKdUm_LostFocus(Index As Integer) Speichert Änderungen in der ersten Textbox ab !
If txtKdUm(0).Text <> "" Then
KdList(pos).KdUm = txtKdUm(0).Text
txtKdUm(0).Text = KdList(pos).KdUm
Call cmdVor_Click Beim Verlassen der TextBox springt der Zähler um
Else eins höher.
MsgBox "Wert kann nicht gelöscht werden!" & vbCrLf & _
"Muss mindestens einen Nullwert enthalten."
txtKdUm(0).SetFocus
End If
End Sub
Private Sub cmdSort_Click()
Dim i As Integer, k As Integer
pos = 0 Sorgt dafür, dass der Index Null immer oben sichtbar ist.
For i = 0 To armax - 1
For k = i + 1 To armax
If KdList(i).KdUm < KdList(k).KdUm Then
hilf = KdList(i)
KdList(i) = KdList(k)
KdList(k) = hilf
End If
Next k
Next i
Call TabAnzeigen
Call settfokus
End Sub
Private Sub cmdVor_Click() Für das Vorwärtsblättern.
If pos < 90 Then
pos = pos + 1
Call TabAnzeigen
cmdWeiter.Visible = True
cmdRueck.Enabled = True
lblMeld.Caption = ""
Else
pos = pos
cmdVor.Enabled = False
cmdWeiter.Visible = False
lblMeld.Caption = "Tabellen- Ende !" Tabellen-Ende wird gemeldet.
End If
End Sub
Private Sub cmdRueck_Click() Für das Rückwärtsblättern.
If pos > 0 Then
pos = pos - 1
Call TabAnzeigen
cmdVor.Enabled = True
cmdWeiter.Visible = True
lblMeld.Caption = ""
Else
pos = pos
cmdRueck.Enabled = False
cmdWeiter.Visible = False
cmdVor.SetFocus
lblMeld.Caption = "Tabellen- Anfang !" Tabellen-Anfang wird gemeldet.
End If
End Sub
Private Sub txtKdUm_GotFocus(Index As Integer)
Call settfokus
End Sub
Private Sub cmdWeiter_Click()
Unload frmAufgabe2 Das nächste Formular wird aufgerufen - siehe
frmAufgabe3.Show http://www.wbrnet.info/db/0072.html
End Sub
Links:
Feld 1 nicht eingabebereit.
Zähler 0 bis 9 werden
angezeigt.
Tabellenanfang wird
angezeigt.
Rechts:
Feld 1 eingabebereit.
Zähler 20 bis 29 werden
angezeigt.
.
Sponsoren und Investoren

Sponsoren und Investoren sind jederzeit herzlich willkommen!
Wenn Sie die Information(en) auf dieser Seite interessant fanden, freuen wir uns über eine kleine Spende. Empfehlen Sie uns bitte auch in Ihren Netzwerken (z. B. Twitter, Facebook oder Google+). Herzlichen Dank!

Nach oben Sitemap
Impressum & Kontakt