DGV Werte abgleichen

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von vierkant.

    DGV Werte abgleichen

    Hallo!
    Datagridview Frage:


    Ich forste die DGV durch:
    mein DGV ist immer in eingeteilt in 3 er Gruppen (Zeilen)

    klicke ich jetzt auf irgendeine Zeile sollen die anderen 2 Zeilen gefunden werden und die Werte in eine Textbox ausgegeben werden.
    Mein Versuch:

    VB.NET-Quellcode

    1. Private Sub DataGridView3_CellClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView3.CellClick
    2. For i As Integer = 0 To DataGridView3.Rows.Count - 1
    3. If DataGridView3.Rows(i).Cells(0).Value = DataGridView3.CurrentRow.Cells(0).Value Then
    4. TextBox1.Text = DataGridView3.Rows(i).Cells(1).Value
    5. End If
    6. Next
    7. End Sub


    Mit diesem Code habe ich es geschafft das aus Zelle 1 in Textbox 1 geschrieben wird (er nimmt hier immer die 3. Zeile)

    Ich will aber jetzt das alle Zeilen die die gleichen Werte in Zelle 0 haben (sind IMMER 3 Zeilen)
    ihre Werte aus Zelle 1 in die jeweiligen Textboxen schreiben:

    Also ich habe 3 Zeilen gefunden die den gleichen Wert in Zelle 0 haben jetzt bitte
    Wert aus Zelle 1 (Zeile 1) in Textbox1
    Wert aus Zelle 1 (Zeile 2) in Textbox2
    Wert aus Zelle 1 (Zeile 3) in Textbox3

    Die DGV filtern wäre zwar eine Lösung - leider aber für mich nicht da diese Methode anderweitig mir Probleme bereiten würde.


    Ich hoffe ihr versteht was ich von euch will!?
    Wenn immer 3 Zeilen zusammengehören, ist die Zeilennummer Mod 3 = 0, Mod 3 = 1 oder Mod 3 = 2. Das Ergebnis (0, 1, 2) subtrahierst Du von der Zeilennummer und erhältst die 1. Zeilennummer Deines 3er-Blocks.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @vierkant: Die

    RodFromGermany schrieb:

    Zeilennummer
    ist bei mir ein Integer.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hallo,

    hast du das so gemeint?

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    3. DataGridView1.Rows.Add()
    4. DataGridView1.Rows(0).Cells(1).Value = 10
    5. DataGridView1.Rows.Add()
    6. DataGridView1.Rows(1).Cells(1).Value = 10
    7. DataGridView1.Rows.Add()
    8. DataGridView1.Rows(2).Cells(1).Value = 10
    9. DataGridView1.Rows.Add()
    10. DataGridView1.Rows(3).Cells(1).Value = 20
    11. DataGridView1.Rows.Add()
    12. DataGridView1.Rows(4).Cells(1).Value = 20
    13. DataGridView1.Rows.Add()
    14. DataGridView1.Rows(5).Cells(1).Value = 20
    15. End Sub
    16. Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
    17. Dim found As Integer = 0
    18. For i As Integer = 0 To DataGridView1.Rows.Count - 1
    19. If Not DataGridView1.Rows(i).IsNewRow AndAlso DataGridView1.Rows(i).Cells(1).Value.ToString = DataGridView1.CurrentRow.Cells(1).Value.ToString Then
    20. found += 1
    21. Select Case found
    22. Case 1
    23. TextBox1.Text = DataGridView1.Rows(i).Cells(1).Value.ToString
    24. Case 2
    25. TextBox2.Text = DataGridView1.Rows(i).Cells(1).Value.ToString
    26. Case 3
    27. TextBox3.Text = DataGridView1.Rows(i).Cells(1).Value.ToString
    28. End Select
    29. End If
    30. Next
    31. End Sub
    32. End Class


    mfG

    Derfuhr

    vierkant schrieb:

    Aber ich verstehe nicht was du mit "Mod" meinst
    Den Modulo-Befehl von .NET.

    VB.NET-Quellcode

    1. Dim mm = 5 Mod 3
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!