Zwischenablage mit Daten aus DGV füllen und in ein vorhandenes Excel Dokument mit verbundenen Zellen einfügen

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von petaod.

    Zwischenablage mit Daten aus DGV füllen und in ein vorhandenes Excel Dokument mit verbundenen Zellen einfügen

    Hallo zusammen,

    ich möchte gerne in meinem Programm aus den per MultiSelect markierten Zeilen im DGV die Werte von 2 Spalten in die Zwischenablage kopieren und in ein vorhandenes Excel Dokument einfügen.

    Das Problem was ich habe sind die verbundenen Zellen in Excel, und da habe ich leider keinen Einfluß drauf.

    Ich habe mir bis jetzt das hier gebastelt.

    Quellcode

    1. For Each Auswahl As DataGridViewRow In Bestellung_DGV.SelectedRows
    2. Zwischenablage &= CStr(Auswahl.Cells("Artikelnummer").Value) & " " & CStr(Auswahl.Cells("Artikelbezeichnung").Value) & vbCrLf
    3. Next


    Ich schreibe mir beide Spalten in einen String und den dann in die Zwischenablage. Beim Einfügen bekomme ich dann die Fehlermeldung, das die Zellanzahl nicht übereinstimmt. Hatta ja recht.
    Alternativ habe ich dann eine zweite Zelle mit

    Quellcode

    1. For Each Auswahl As DataGridViewRow In Bestellung_DGV.SelectedRows
    2. Zwischenablage &=
    3. CStr(Auswahl.Cells("Artikelnummer").Value) & " " &
    4. CStr(Auswahl.Cells("Artikelbezeichnung").Value) & & vbTab & vbCrLf
    5. Next

    dazu gemacht. Dann trennt er mir im Excel Dokument aber die verbundenen Zellen auf. Die Anzeige funktioniert aber.
    Anfangs habe ich die beiden Spalten einfach als 2 Zellen kopiert, da habe ich nur das Problem, dass der Wert aus Zelle 1 so lang sein kann, dass er von Zelle 2 abgetrennt wird und Zelle 1 ist die wichtigere Zelle.

    Gibt es eine Möglichkeit das so in die Zwischenablage zu kopieren, dass er meint es wären 2 verbundene Zellen ?

    Ich hoffe man versteht mich .. ?(


    Gruß
    HerrFrie
    Gibt es einen triftigen Grund weshalb das über die Zwischenablage gehen muss?

    HerrFrie schrieb:

    Beim Einfügen bekomme ich dann die Fehlermeldung, das die Zellanzahl nicht übereinstimmt
    Das ist aber nur der Fall, wenn du vor dem Einfügen einen Zellbereich auswählst.Was passiert, wenn du nur die erste Zelle auswählst?

    HerrFrie schrieb:

    Zwischenablage &= CStr(Auswahl.Cells("Artikelnummer").Value) & " " & CStr(Auswahl.Cells("Artikelbezeichnung").Value) & vbCrLf
    Warum nicht

    Visual Basic-Quellcode

    1. Zwischenablage &= CStr(Auswahl.Cells("Artikelnummer").Value) & vbTab & CStr(Auswahl.Cells("Artikelbezeichnung").Value) & vbCrLf
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --