PDA

Vollständige Version anzeigen : OLE Automation


<top>
28.06.2002, 16:11
Hallo Ihr lieben Leute,

ich bin neu hier und habe gleich ein Hammerproblem.

Ich möchte Datensätze aus einem Access-Formular (Access 97) heraus in eine Excel-Datei (Excel 97) schreiben.
Da diese Excel-Datei ein nicht veränderbares Format hat (Newsletterversand) gibt es nicht die Möglichkeit mittels normalem OLE die Daten einfach drüber zu kopieren (ändert die Formateinstellungen unter Excel).
Auch die Möglichkeit mittels „Daten einfügen“ auf Excelseite ist keine Lösung, da später Leute mit der Datenbank arbeiten sollen, die keine Ahnung von Datenex-port/importfunktionen haben.
Über das folgende Modul (Ereignisprozedur) gelingt es mir ja wenigstens schon Excel mit dem entsprechenden Dokument im Hintergrund aufzurufen:

Private Sub Befehl47_Click()

Set ExcApp = CreateObject("Excel.Application")

ExcApp.Visible = True

ExcApp.Workbooks.Open ("c:\*\Dokument.xls")

End Sub

Aber wie spreche ich jetzt einzelne Felder im Exceldokument an und wie kann ich diese Inhalte dann verändern??

Hoffentlich habe ich mich nicht zu kompliziert ausgedrückt. Und hoffentlich ist hier einer der mir helfen kann!

<top>
28.06.2002, 17:36
Sorry Leute,

ich habe in meiner Verzweiflung völlig vergessen mich vorab für alle Lösungsvorschläge zu bedanken.
Anbei noch meine e-mail Adresse: st0168@student.power.uni-essen.de
Leider habe ich bei der Registrierung irgendeinen Fehler gemacht, dahalb bin ich noch kein Mitglied wie Ihr alle.

salut
top

Schnippendick
28.06.2002, 18:29
*Frage-nicht-versteh*
Pump' die Daten doch einfach mit MS Query in die Excel Tabelle.
Dann kannst Du doch, nachdem Du auf Befehl47 geklickt hast, die Daten in Excel mit rechtsklick, Daten aktualisieren auf den neuesten Stand bringen.
Die Formatierung geht dabei auch nicht verloren... die Tabelle wird höchstens länger oder kürzer

Gruss

Cheerookee

top
28.06.2002, 19:01
Hallo Schnippendick,

vielen Dank für den Tip. Ich werde es mal ausprobieren. Das Ergebnis teile ich Dir dann mit.

Angeblich soll aber auch die Möglichkeit bestehen, Sheets unter Excel direkt anzusprechen.

Ich melde mich wieder, salut
top

WalterS
28.06.2002, 22:38
Hi!
Du warst schon auf dem richtigen Weg

Dim xlAnw As Excel.Application
Dim xlBuch As Excel.Workbook
Dim xlArbBlatt As Excel.WorkSheet

Set xlAnw = CreateObject("Excel.Application")
Set xlBuch = xlAnw.Workbooks.Open("c:\dokument.xls")
Set xlArbBlatt = xlBuch.Worksheets(1)
xlArbBlatt.Cells(1, 1) = "Kreuzung"' Zelle A1
xlArbBlatt.Cells(1, 4) = "Gerät"' Zelle D1
Set xlArbBlatt = Nothing
Set xlBuch = Nothing
xlAnw.Quit
Set xlAnw = Nothing

Hoffe, das reicht an INFO

ploeve
31.10.2002, 21:45
EDIT: Danke gefunden! Der Verweis zu Excel war komischerweise nicht mehr angehakt...??!!??
Naja, jetzt ghehts ja, danke euch!
lg, matthias

Hallo Leute!
Eine Frage dazu!
Benutze Access 2000/2002 und bekomme die Fehlermeldung:
"Benutzerdenifierter typ nicht definiert"
Marke bleibt bei Dim xlAnw As Excel.Application stehen! Ich finde Excel.Application nirgends, heißt das beim neuen Access anders??
Lg Matthias

[ 31. Oktober 2002: Beitrag editiert von: ploeve ]</p>