vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: DGV mit Daten aus zwei XLS Tabellen laden 
Autor: ModeratorDaveS (Moderator)
Datum: 17.08.11 16:07

Anhang:  Anhangbild1.png (61k)  Anhangbild2.png (53k)  Anhangbild3.png (52k)  

Das stimmt nicht. dataAdapter.Fill() wird die Daten einfach hinzufügen (dataTable.Merge() standardmäßig auch). ZB. es gibt zB zwei Excel Tabellen mit Spalten col1, col2, col3 (siehe erste zwei Bilder). Der Code
    Dim objDataSet As New DataSet
    Dim objAdapter As OleDbDataAdapter
    Dim objConnection As New OleDbConnection
    Dim myPath As String = "..."
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
 
        objConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data" & _
          "Source=" & myPath & ";Extended Properties=""Excel" & _
          "8.0;HDR=Yes;IMEX=1"";"
 
        loadTable("Tabelle1")
        loadTable("Tabelle2")
 
        With DataGridView1
            .DataSource = objDataSet.Tables("TheTable")
            .ReadOnly = True
            .Refresh()
        End With
 
    End Sub
 
    Private Sub loadTable(ByVal sTable As String)
        objAdapter = New OleDbDataAdapter("select * from [" & sTable & "$]", _
          objConnection)
        objAdapter.Fill(objDataSet, "TheTable")
    End Sub
End Class
lädt die Daten wie im dritten Bild.
Da es keine Primärschlüssel gibt werden gleiche Daten auch doppelt vorkommen.
Wenn du die Spalten vorher definierst werden die Primärschlüssel aber berücksichtigt (siehe Bild4, im nächsten Beitrag).
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        Dim dt As New DataTable("TheTable")
        dt.Columns.Add("col1", GetType(String))
        dt.Columns.Add("col2", GetType(Integer))
        dt.Columns.Add("col3", GetType(Integer))
 
        dt.PrimaryKey = New DataColumn() {dt.Columns(0)}
 
        objDataSet.Tables.Add(dt)
 
        objConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data" & _
          "Source=" & myPath & ";Extended Properties=""Excel" & _
          "8.0;HDR=Yes;IMEX=1"";"
 
        loadTable("Tabelle1")
        loadTable("Tabelle2")
 
        With DataGridView1
            .DataSource = objDataSet.Tables("TheTable")
            .ReadOnly = True
            .Refresh()
        End With
 
    End Sub
Was sinnvoll ist kommt darauf an wie "identisch" die Tabellen wirklich sind und was du genau erreichen willst.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
DGV mit Daten aus zwei XLS Tabellen laden1.095Knetschi16.08.11 10:34
Re: DGV mit Daten aus zwei XLS Tabellen laden723CLL16.08.11 15:46
Re: DGV mit Daten aus zwei XLS Tabellen laden701Knetschi16.08.11 15:57
Re: DGV mit Daten aus zwei XLS Tabellen laden698Knetschi17.08.11 15:24
Re: DGV mit Daten aus zwei XLS Tabellen laden867ModeratorFZelle17.08.11 15:41
Re: DGV mit Daten aus zwei XLS Tabellen laden767ModeratorDaveS17.08.11 16:07
Re: DGV mit Daten aus zwei XLS Tabellen laden731ModeratorDaveS17.08.11 16:08
Re: DGV mit Daten aus zwei XLS Tabellen laden726ModeratorDaveS18.08.11 17:30
Re: DGV mit Daten aus zwei XLS Tabellen laden697Knetschi24.08.11 09:48

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel