Hallo zusammen !
Hier wollte ich ein Teil meines Code veröffentlichen, soll irgend-jemand von euch mit einem Tabellen Steuerelemt in berürung kommen.
Hier ist die Beispiel Code wie man die Doppelte Einträge vermeidet, vergleicht von Datums und wie man in Spalten ICON anzeigen lässt z.b für ein Status
Beschreibung:
2 Tabellen flexTabelle und flexEinnerung, in flexTabelle werden Daten eingegeben und Tabelle flexErinnerung befindet sich auf eine andere Form, sobald die Form geladen wird, werden automatisch die Datensätze aus flexTabelle in flexErinnerung eingefügt wenn bis GB bleiben 10, 0, -1(1Tag nach GB) Tage.
In Tabelle flexErinnerung werden auch mit ICONS die Datensätze angezeigt so zusagen ein Status.
Ihr könnt die Code auf Ihre weise ändern, hier können nicht nur Datum verglichen sonder auch String, Zahlen oder sonstige Werte.
Mit die Code kann ich mit ICONs in jede Spalte den Status signalisieren
Mfg Alex
Edit by Agent:
-> Titel "Source Code" ist zu allgemein -> geändert
-> Topic ins "SourceCode Austausch" verschoben
Hier wollte ich ein Teil meines Code veröffentlichen, soll irgend-jemand von euch mit einem Tabellen Steuerelemt in berürung kommen.
Hier ist die Beispiel Code wie man die Doppelte Einträge vermeidet, vergleicht von Datums und wie man in Spalten ICON anzeigen lässt z.b für ein Status
Beschreibung:
2 Tabellen flexTabelle und flexEinnerung, in flexTabelle werden Daten eingegeben und Tabelle flexErinnerung befindet sich auf eine andere Form, sobald die Form geladen wird, werden automatisch die Datensätze aus flexTabelle in flexErinnerung eingefügt wenn bis GB bleiben 10, 0, -1(1Tag nach GB) Tage.
In Tabelle flexErinnerung werden auch mit ICONS die Datensätze angezeigt so zusagen ein Status.
Ihr könnt die Code auf Ihre weise ändern, hier können nicht nur Datum verglichen sonder auch String, Zahlen oder sonstige Werte.
VB.NET-Quellcode
- ' FLEXTABELLE - TABELLEN STEUERELEMENT (tabelle1)
- 'FLEXERINNERUNG - TABELLEN STEUERELEMENT(tabelle2)
- 'imgIcon - ImageList
- 'ZUERST DIE VARIABLEN DEKLARATION
- Dim i As Long
- Dim k As Long
- Dim lngErinnerungCols As Long
- Dim lngTabelleCols1 As Long
- Dim lngTabelleCols2 As Long
- Dim blnNameVergleichen As Boolean
- Dim blnVornameVergleichen As Boolean
- Dim lngRow_Zähler_Tabelle As Long
- Dim lngRow_Zähler_Erinnerung As Long
- Dim strName As String
- Dim strVorname As String
- Dim strGeburtsTag As String
- Dim strGeburtsMonat As String
- Dim strGeburtsJahr As String
- Dim intDatVorGeburtsTag As Integer
- Dim bln_Tage As Boolean
- Dim bln_Heute As Boolean
- Dim bln_Vergangen As Boolean
- Dim lngGeburtsDatum As Date
- 'Datum erstellen
- strDatum = Date.Now.Date 'heir wierd das Aktuelle Datum z.b 11.07.2007
- If flexTabelle.Rows >= 1 Then 'wenn in Tabelle anzahl der Spalten größe oder gleich "1", dann
- 'suche
- 'Schleifen durchlauf nach Datums in Tabelle1 (flexTabelle)
- For lngRow_Zähler_Tabelle = 1 To flexTabelle.Rows - 1
- flexTabelle.Row = lngRow_Zähler_Tabelle
- flexTabelle.Col = 7 'geburtstag
- strGeburtsTag = flexTabelle.Text
- flexTabelle.Col = 8 'geburtsmonat
- strGeburtsMonat = flexTabelle.Text
- lngGeburtsDatum = CDate(strGeburtsTag & "." & strGeburtsMonat)
- 'schneide das Datum Links um 5 zeichen, dann 11.07
- strDatum = Microsoft.VisualBasic.Left(strDatum, 5)
- 'Differenz zwieschen Tage ermitteln
- intDatVorGeburtsTag = DateDiff(DateInterval.Day, strDatum, lngGeburtsDatum)
- bln_Tage = 10 Like intDatVorGeburtsTag
- bln_Heute = 0 Like intDatVorGeburtsTag
- bln_Vergangen = -1 Like intDatVorGeburtsTag
- 'Wenn eine von Variablen bln_Tage, blnHeute, oder bln_Vergangen Wert True hat dann füge in Tabelle2
- ' (flexErinnerung) ein Datensatz zu
- If (bln_Tage = True Or bln_Heute = True Or bln_Vergangen = True) And flexErinnerung.Rows = 1 Then
- flexErinnerung.Rows = flexErinnerung.Rows + 1
- flexErinnerung.RowSel = lngRowMarkierung + 1
- 'Schleifen durchlauf in Tabelle1(flexTabelle)
- For lngTabelleCols1 = 0 To flexTabelle.Cols - 1
- i = lngTabelleCols1
- flexTabelle.Col = i
- flexErinnerung.set_TextMatrix(flexErinnerung.RowSel, i, flexTabelle.Text)
- Next
- End If
- 'Wenn ein Datensatz vorhanden, und anzahl der Spalten in Tabelle2 (flexEinnerung) größer als "1"
- 'und eine von 3 Variablen hat den Wert True dann prüfe ob der Datensatz
- 'in Tabelle2 (flexEinnerung) bereits exisistiert
- If (bln_Tage = True Or bln_Heute = True Or bln_Vergangen = True) And flexErinnerung.Rows >= 2 Then
- For lngRow_Zähler_Erinnerung = 1 To flexErinnerung.Rows - 1
- flexErinnerung.Row = lngRow_Zähler_Erinnerung
- 'Schleifen durchlauf in Tabelle2 (flexEinnerung)
- For lngErinnerungCols = 0 To flexErinnerung.Cols - 1
- flexErinnerung.Col = lngErinnerungCols
- 'Name und Vorname werden aus Tabelle1(flexTabelle) entnommen
- strName = flexTabelle.get_TextMatrix(lngRow_Zähler_Tabelle, 5)
- strVorname = flexTabelle.get_TextMatrix(lngRow_Zähler_Tabelle, 6)
- blnNameVergleichen = strName Like flexErinnerung.Text
- blnVornameVergleichen = strVorname Like flexErinnerung.Text
- ' Wenn Datensatz exisistiert dann verlasse die Schleife
- If blnNameVergleichen = True And blnVornameVergleichen = True Then Exit For
- Next
- Next
- 'Wenn Datensatz in Tabelle2 (flexEinnerung) nicht exisistiert dann
- ' füge aus Tabelle1 (flextabelle) in Tabelle2 (flexerinnerung) ein Datensaz zu
- If blnNameVergleichen = False And blnVornameVergleichen = False Then
- flexErinnerung.Rows = flexErinnerung.Rows + 1
- flexErinnerung.RowSel = lngRowMarkierung + 1
- 'Schleifen durchlauf in Tabelle1 (flexTabelle)
- For lngTabelleCols2 = 0 To flexTabelle.Cols - 1
- k = lngTabelleCols2
- flexTabelle.Col = k
- flexErinnerung.set_TextMatrix(flexErinnerung.RowSel, k, flexTabelle.Text)
- Next
- End If
- End If
- Next
- End If
Mit die Code kann ich mit ICONs in jede Spalte den Status signalisieren
VB.NET-Quellcode
- Dim Icon As Integer
- Dim strGeburtsTag As String
- Dim strGeburtsMonat As String
- Dim lngGeburtsDatum As Date
- Dim Z1 As Long
- If flexErinnerung.Rows >= 1 Then
- 'Schleife durchlauf und prüfe bis GB Tage, weise ein ICON zu
- For Z1 = 1 To flexErinnerung.Rows - 1
- flexErinnerung.Row = Z1
- flexErinnerung.Col = 7
- strGeburtsTag = flexErinnerung.Text
- flexErinnerung.Col = 8
- strGeburtsMonat = flexErinnerung.Text
- lngGeburtsDatum = CDate(strGeburtsTag & "." & strGeburtsMonat)
- strDatum = Microsoft.VisualBasic.Left(strDatum, 5)
- Icon = DateDiff(DateInterval.Day, strDatum, lngGeburtsDatum)
- If Icon = 0 Then
- flexErinnerung.Col = 19
- flexErinnerung.CellPicture = imgIcon.Images(1)
- End If
- If Icon >= 1 Then
- flexErinnerung.Col = 19
- flexErinnerung.CellPicture = imgIcon.Images(0)
- End If
- If Icon <= -1 Then
- flexErinnerung.Col = 19
- flexErinnerung.CellPicture = imgIcon.Images(2)
- End If
Mfg Alex
Edit by Agent:
-> Titel "Source Code" ist zu allgemein -> geändert
-> Topic ins "SourceCode Austausch" verschoben
Dieser Beitrag wurde bereits 14 mal editiert, zuletzt von „Alex2000“ ()