Office: VBA Oracle DB auslesen

Helfe beim Thema VBA Oracle DB auslesen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Schönen guten Tag. Ich versuche seit einigen Tagen eine Verbindung zu einer Oracle DB aufzubauen, dort Daten zu selektieren und diese in eine meine... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von lalaland, 1. September 2017.

  1. VBA Oracle DB auslesen


    Schönen guten Tag.
    Ich versuche seit einigen Tagen eine Verbindung zu einer Oracle DB aufzubauen, dort Daten zu selektieren und diese in eine meine Tabelle (Sheet) einzufügen.
    Das ganze soll mittels VBA verwirklicht werden da es um mehrere Datensätze geht und dies täglich wiederholt werden soll.

    Die übernommen Daten werden in Excel weiterverarbeitet.

    Folgende Punkte werden zur Verbindung zur Oracle DB benötigt und stehen mir natürlich zur Verfügung:

    Database: Oracle
    Hostname: IP-ADDRESS
    Port: PORT
    SID: SID
    User: USERNAME
    Password: PASSWORD

    Eine Verbindung mit dem SQL Developer ist ohne Probleme möglich.

    Soweit mir bekannt ist ist dafür der Oracle ODBC Treiber vonnöten.
    Diesen habe ich herruntergeladen und kann ihn im ODBC Daten Administrator nutzen.

    Dazu schon ein paar Fragen.

    Muss ich diesen Treiber in die 32bit oder 64bit des ODBC Daten Administrator einbinden?
    In welches DNS muss er eingerichtet werden? (User DNS, File DNS, System DNS)
    Muss man beim einfügen noch irgendwas beachten?

    Kurze Anmerkung, eine Testverbindung im ODBC Daten Administrator ist erfolgreich. (64bit, System DNS)

    Genutzt wird der Treiber direkt von Oracle -> 'instantclient-odbc-windows.x64-12.2.0.1.0'


    So jetzt zu Excel / VBA:

    Code:
    Dies ist soweit mein 'TestCode', welcher in der Zeile 'rs.Open sql, cnxDB' fehlschlägt.

    Ich weiß natürlich nicht ob es an falschen Treiber leigt, oder der genutzte Code falsch ist oder oder oder.

    Könnt ihr da vllt mal drauf schauen?

    Ziel soll sein das die Verbindung aufgebaut wird, die "Select" Anfrage hingeschickt wird. Das kompette Ergebniss kopieren und in mein ausgewähltes Sheet (Tabelle) einfügen.

    :)
     
    lalaland, 1. September 2017
    #1
  2. Moin, das Ganze sollte auch mit Power Query gehen; da ist schon eine Möglichkeit zum Zugriff auf das Orakel integriert.
     
  3. Schönen guten Tag.

    Über DATEN -> FROM OTHER SOURCES kann ich mühelos Tabellen aus dieser Datenbank ziehen.
    Nur finde ich keine Möglichkeit dort SQL Anfragen an die Datenbank zu senden.

    ABER
    Ich benötige das ganze als Macro (VBA) da ich die SQL Anfrage mit Variablen zusammenbaue, es immer auf verschiedene Sheets (Tabellen) kopiert werden muss und es sehr sehr viele Abfragen sein sollen.

    Trotzdem Danke *Smilie

    Vllt gibt es ja noch weitere gute Tipps
     
    lalaland, 3. September 2017
    #3
  4. VBA Oracle DB auslesen

    Code:
    Eine SQL-Anweisung muss entsprechend der nötigen Syntax formuliert werden. Dazu gehört auch, dass Schlüsselworte durch Leerzeichen von anderen Bezeichnern getrennt werden.
     
  5. Danke für die Antwort ebs17,

    nur leider versteh ich nicht genau was du meinst?
    Das Beispiel:
    "SELECT * FROM IRGENDWAS"
    dient hier nur als Platzfüller.
    Gernutzt wird eine riesig große Anweisung, welche im SQL Developer funktioniert.
     
    lalaland, 3. September 2017
    #5
  6. Code:
    Der Unterschied zwischen beiden Gestaltungen fällt Dir auf?

    Mit dem Öffnen des Recordsets wird jedenfalls die SQL-Anweisung ausgeführt. Wenn es knallt, ist da ein Fehler enthalten.

    So, wie das duch Deine bisherige Darstellung dargestellt wird?

    SQL Developer ... ist woher?
     
Thema:

VBA Oracle DB auslesen

Die Seite wird geladen...
  1. VBA Oracle DB auslesen - Similar Threads - VBA Oracle auslesen

  2. VBA in einer Zeile zu lang

    in Microsoft Excel Hilfe
    VBA in einer Zeile zu lang: Moin, mein VBA Code ist für eine Zeile zu lang. Kann mir einer helfen wie ich den auf 2 Zeilen aufteilen Kann? arrSchuhDaten = Array(Range("A6"), Range("F6"), Range("J6"), Range("A7"),...
  3. Listbox wird nicht breiter, Schriftgrösse ändert sich

    in Microsoft Excel Hilfe
    Listbox wird nicht breiter, Schriftgrösse ändert sich: Hallo, ich habe ein Formular dessen Breite ich mit der Maus ändern kann. Im Formular habe ich einen Rahmen und darin eine Listbox deren Breite an die Formularbreite angepasst wird....
  4. Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch

    in Microsoft Excel Hilfe
    Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch: Hallo zusammen, erstmal danke für all die Tipps und Kniffe, die ich ohne eigenen Thread gefunden und gelernt habe. Leider finde ich mein Thema nirgendwo... Aktuell habe ich zwei Spalten mit...
  5. Per Hyperlink ausgeblendetes Blatt einblenden

    in Microsoft Excel Hilfe
    Per Hyperlink ausgeblendetes Blatt einblenden: Hola ins Forum, ich bräuchte mal wieder eure Hilfe. Ich habe ein Tabellenblatt das mir als Register dient und wo Hyperlinks eingefügt sind um auf das dazugehörige Blatt zu springen. Diese Blätter...
  6. Bilder über VBA Größe und DPI ändern für Webshop

    in Microsoft Excel Hilfe
    Bilder über VBA Größe und DPI ändern für Webshop: Hallo Excel Spezialisten, Ich habe mir eine recht aufwendige Tabelle gebastelt, aus der ich Daten für meinen Webshop generiere und in einer .csv bereitstelle. Es werden neue Preislisten...
  7. VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen

    in Microsoft Word Hilfe
    VBA: Platzhalter ersetzen und evtl. leere Zeile einfügen: Hallo zusammen, ich habe eine Word-Vorlage mit Platzhaltern, in die ich mit VBA Daten aus einer Excel-Datei einfüge (in eine Excel-Zeile schreibe ich alle Daten für ein neues Word-Dokument). So...
  8. ODBC Verbindung zu Oracle DB aus VBA

    in Microsoft Excel Hilfe
    ODBC Verbindung zu Oracle DB aus VBA: Hallo Ich will aus Excel 2010 (Windows 7 64bit) mittels VBA Daten aus einer Oracle Datenbank auslesen und in Excel einfügen. Der Oracle Client 32-bit ist installiert – trotzdem krieg ich eine...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden