Thomas Büttner: Visual Basic

Hallo ihr guten Geister,
Ich habe ein nicht geringes Problem mit Visual Basic. Leider ist dies das einzige Forum, das ich kenne. Ich werde frecherweise diese VB-Frage einfach hier stellen, wäre aber dankbar, wenn mir jemand ein ähnlich gutes Forum wie dieses hier nennen könnte, in dem es aber um VB geht.

Trotzdem, hier mein Problem:
Ich möchte mit Visual Basic auf eine Excel-Tabelle zugreifen, und diese dann auch mit movenext, movelast, movefirst, usw. bearbeiten können. Laut Online-Hilfe geht das folgendermaßen:

Dim dbs As Database
     Dim rstSales As Recordset
     Dim qdfNumOrders As QueryDef
     Dim intNumRecords As Integer

Set dbs = OpenDatabase(frmKonvertierung.txtQuelle.Text, False, False, _
     "Excel 5.0;HDR=YES;")
  
     Set rstSales = dbs.OpenRecordset("Einsatzberichte EW$")

rstSales.MoveLast
     intNumRecords = rstSales.RecordCount
     MsgBox "Diese Tabelle enthält " & intNumRecords & " Zeilen."
     rstSales.Close

frmKonvertierung.txtQuelle.Text enthält den Pfad und Dateinamen meiner Tabelle, Einsatzberichte EW ist der Name des Tabellenblatts und das $ soll laut VB Online-Hilfe angegeben werden.

Wäre echt toll, wenn hier jemand weiterwüßte.

Gruß aus Bremen,
Thomas Büttner

  1. Ich werde frecherweise diese VB-Frage einfach hier stellen, wäre aber dankbar, wenn mir jemand ein ähnlich gutes Forum wie dieses hier nennen könnte, in dem es aber um VB geht.

    <www.werweisswas.de>

    hast du die Excel Tabelle als ODBC datei eingetragen? (systemsteurung -> ODBC)

    Ciao
    Ludwig

  2. Hallo ihr guten Geister,
    Ich habe ein nicht geringes Problem mit Visual Basic. Leider ist dies das einzige Forum, das ich kenne. Ich werde frecherweise diese VB-Frage einfach hier stellen, wäre aber dankbar, wenn mir jemand ein ähnlich gutes Forum wie dieses hier nennen könnte, in dem es aber um VB geht.

    Trotzdem, hier mein Problem:
    Ich möchte mit Visual Basic auf eine Excel-Tabelle zugreifen, und diese dann auch mit movenext, movelast, movefirst, usw. bearbeiten können. Laut Online-Hilfe geht das folgendermaßen:

    Nun ich bin auch keine VB-Profi, aber falls Du VB 6 verwendest, dann könntest Du es ja mal
    mit dem ADO-Steuerelement versuchen. ADO akzeptiert als Daten-Provider auch
    Excel-Tabellen. Verwende am besten den ODBC-Treiber für Excel (Systemsteuerung->ODBC).

    Einzelschritte zur Anbindung:

    * nimm das ADO-Datensteuerelement in die Werkzeugsammlung auf (Microsoft ADO Data Control 6.0)

    * füge das ADO-Datensteuerelement in eine form ein

    * verbinde das Steuerelement mit Deiner Datenquelle (Eigenschaft ConnectionString)

    * wähle die Datentabelle aus (Eigenschaft Record-Source)

    * zieh ein Textfeld auf

    * verknüpfe das Textfeld mit den ADO-Steuerlement (Eigenschaft DataSource)

    * verknüpfe das Textfeld mit dem gewünschten Datenfeld (Eigenschaft DataField)

    So, normalerweise müsste das Ganze jetzt laufen, d.h. Du kannst durch die Tabelle
    browsen. Änderungen werden automatisch beim weiterbrowsen gespeichert.

    Die Angaben sind allerdings ohne gewähr, da ich das Ganze mit einer Access-Db
    getestet habe. Es sollte aber (nach Microsoft-Philosophie) auch mit einer Excel-Tabelle funktionieren.

    bis denne
    Stephan

  3. Hast du in deinem Projekt unter References eine Referenz auf ADO gesetzt?

  4. Moin Thomas,

    (...)  wäre aber dankbar, wenn mir jemand ein ähnlich gutes Forum wie dieses hier nennen könnte, in dem es aber um VB geht.

    Foren zu (fast) allen Themen und eben auch zu Excel/VBA findest Du unter www.spotlight.de

    Gruß
    Dirk