vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 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 13:31

hallo DaveS,

ich bekomme mit dem Excel langsam den Nervenzusammenbruch.

erst mal den code:
        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;IMEX=1;" & Chr(34) & ";"
        CB_OLE_CON = New System.Data.OleDb.OleDbConnection(CB_OLE_ConString)
        CB_OLE_Dataset = New System.Data.DataSet("TTT")
        CB_OLE_Adapter = New System.Data.OleDb.OleDbDataAdapter("select * from" & _
          "[" & _ CB_Excel_TabName.Text & "$]", 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(CB_Excel_TabName.Text).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("Typ-Schlüssel") = KBA
                    ROW.EndEdit()
                End If
                CB_MPZ_Quelle.Close()
            End If
 
        Next ROW
        Dim updateSQL As String = "update [" & CB_Excel_TabName.Text & "$] set" & _
          "Typ-Schlüssel=? where ID=?"
        Dim updateCmd As New OleDb.OleDbCommand(updateSQL, CB_OLE_CON)
        updateCmd.Parameters.Add("P1", OleDb.OleDbType.VarChar, 20, _
          "Typ-Schlüssel")
        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()
nach CB_OLE_CON = New System.Data.OleDb.OleDbConnection(CB_OLE_ConString) im Debug
steht bei der Serverversion -> Ungültige Operation. Die Verbindung ist geschlossen.
und bei State Closed

Aber es gibt keinen Fehler. Die Zeile CB_OLE_Adapter.Fill(CB_OLE_Dataset) wird auch abgearbeitet denn es dauert eine Weile bis der nächste Befehl ausgeführt wird.
Es scheint alle zu funktionieren. Wenn ich aber die geänderten daten zurück schreiben will gibt es folgende Fehlermeldung:
{"Syntaxfehler in UPDATE-Anweisung."}
Ich habe keinen Schimmer wo da ein fehler sein soll
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.119ModeratorDaveS12.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.750cbarth18.01.10 17:56
Re: EXCEL Daten lesen und ändern2.731Dot02.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