vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 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

ADO.NET / Datenbanken
Re: EXCEL Daten lesen und ändern 
Autor: cbarth
Datum: 18.01.10 17:56

Danke!!!

Mit all den Hinweisen klappt es endlich.

Ich glaube mein letztes Problemchen lag am Connection String und an der Schreibweise im update.

        Dim Excel_Datei As String = ""
        Dim Excel_Tabelle As String = ""
        Dim BJ_von As String = ""
        Dim BJ_bis As String = ""
        Dim KBA As String
        Dim Such As String = ""
        Dim MPZ_Befehl As String = ""
        Dim BefOk As Boolean = False
        Dim CB_MPZ_Quelle As SqlDataReader
        Dim CB_OLE_ConString As String
        Dim CB_OLE_Dataset As System.Data.DataSet
        Dim CB_OLE_CON As System.Data.OleDb.OleDbConnection
        Dim CB_OLE_Adapter As System.Data.OleDb.OleDbDataAdapter
        CB_OLE_ConString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
                            CB_QuellDatei.Text & ";Extended Properties=" & Chr( _
                            34) & _
                           "Excel 8.0;HDR=YES;" & Chr(34) & ";"
        CB_OLE_CON = New System.Data.OleDb.OleDbConnection(CB_OLE_ConString)
        CB_OLE_CON.Open()
        CB_OLE_Dataset = New System.Data.DataSet()
        CB_OLE_Adapter = New System.Data.OleDb.OleDbDataAdapter("select * from" & _
          "[" & _ CB_Excel_TabName.Text & "$] where NOT IsNull(ID)", CB_OLE_CON)
        CB_OLE_Adapter.Fill(CB_OLE_Dataset)
        CB_OLE_Dataset.Tables.Add(CB_Excel_TabName.Text)
        Dim ROW As DataRow
        'Dim COL As DataColumn
 
        CB_MPZSql_Com = CB_MPZConn.CreateCommand
 
        If CB_MPZOpenOK = False Then
            CB_MPZConn.Open()
            CB_MPZConn.ChangeDatabase("MPZ_TTC")
            CB_MPZConOK = True
            CB_MPZOpenOK = True
        End If
 
        For Each ROW In CB_OLE_Dataset.Tables(0).Rows
            BJ_von = ""
            BJ_bis = ""
            KBA = ""
            Such = ""
            If Not DBNull.Value.Equals(ROW("ID")) Then
                If CInt(Mid(Trim(ROW("Baujahr")), 4, 2)) < 10 Then
                    BJ_von = Mid(Trim(ROW("Baujahr")), 1, 3) & "20" & Mid(Trim( _
                      ROW("Baujahr")), 4, 2)
                Else
                    BJ_von = Mid(Trim(ROW("Baujahr")), 1, 3) & "19" & Mid(Trim( _
                      ROW("Baujahr")), 4, 2)
                End If
                If CInt(Mid(Trim(ROW("Baujahr")), Len(Trim(ROW("Baujahr"))) - _
                  1, 2)) < 10 Then
                    BJ_bis = Mid(Trim(ROW("Baujahr")), Len(Trim(ROW( _
                    "Baujahr"))) - 4, 3) & "20" & Mid(Trim(ROW("Baujahr")), Len( _
                    Trim(ROW("Baujahr"))) - 1, 2)
                Else
                    BJ_bis = Mid(Trim(ROW("Baujahr")), Len(Trim(ROW( _
                      "Baujahr"))) - 4, 3) & "19" & Mid(Trim(ROW("Baujahr")), _
                      Len(Trim(ROW("Baujahr"))) - 1, 2)
                End If
                Such = Replace(Trim(Mid(ROW("Modell"), 5, Len(ROW("Modell")))), _
                  " ", "")
                MPZ_Befehl = "select KBA FROM SHOP_Pkw_001 where replace(" & _
                "Bezeichnung,' ','')='" & Such & _
                             "' and BJvon='" & BJ_von & "' and BJbis='" & _
                             BJ_bis & "'"
                CB_MPZSql_Com.CommandText = MPZ_Befehl
                CB_MPZ_Quelle = CB_MPZSql_Com.ExecuteReader
                If CB_MPZ_Quelle.HasRows = True Then
                    While CB_MPZ_Quelle.Read
                        KBA = CB_MPZ_Quelle.GetValue(0)
                    End While
                End If
                If KBA <> "" Then
                    ROW.BeginEdit()
 
                    ROW("KBANr") = KBA
                    ROW.EndEdit()
                Else
                    ROW.BeginEdit()
 
                    ROW("KBANr") = " "
                    ROW.EndEdit()
 
                End If
                CB_MPZ_Quelle.Close()
            End If
 
        Next ROW
        Dim updateSQL As String = "Update [" & CB_Excel_TabName.Text & "$] Set" & _
          "KBANr=? Where ID=? "
        Dim updateCmd As New System.Data.OleDb.OleDbCommand(updateSQL, _
        CB_OLE_CON)
        updateCmd.Parameters.Add("P1", OleDb.OleDbType.VarChar, 20, "KBANr")
        updateCmd.Parameters.Add("P2", OleDb.OleDbType.Integer, 32, "ID")
 
        CB_OLE_Adapter.UpdateCommand = updateCmd
 
        CB_OLE_Adapter.Update(CB_OLE_Dataset) ', CB_Excel_TabName.Text
 
        CB_OLE_CON.Close()
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
EXCEL Daten lesen und ändern3.944cbarth12.01.10 13:09
Re: EXCEL Daten lesen und ändern2.793ModeratorDaveS12.01.10 13:43
Re: EXCEL Daten lesen und ändern3.022cbarth12.01.10 13:51
Re: EXCEL Daten lesen und ändern2.924ModeratorDaveS12.01.10 14:40
Re: EXCEL Daten lesen und ändern2.677cbarth12.01.10 16:30
Re: EXCEL Daten lesen und ändern3.120ModeratorDaveS12.01.10 18:00
Re: EXCEL Daten lesen und ändern4.148Bingopark13.01.10 00:41
Re: EXCEL Daten lesen und ändern2.934cbarth13.01.10 12:23
Re: EXCEL Daten lesen und ändern3.304ModeratorDaveS13.01.10 10:02
Re: EXCEL Daten lesen und ändern2.846cbarth13.01.10 12:20
Re: EXCEL Daten lesen und ändern3.219cbarth18.01.10 13:31
Re: EXCEL Daten lesen und ändern2.825ModeratorDaveS18.01.10 13:48
Re: EXCEL Daten lesen und ändern2.995cbarth18.01.10 15:15
Re: EXCEL Daten lesen und ändern2.874ModeratorDaveS18.01.10 15:50
Re: EXCEL Daten lesen und ändern2.751cbarth18.01.10 17:56
Re: EXCEL Daten lesen und ändern2.732Dot02.02.10 19:49

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