Datei öffnen und Function darin aufrufen

Bild

Betrifft: Datei öffnen und Function darin aufrufen
von: bastian
Geschrieben am: 24.03.2005 09:09:25
Hi,
ich möchte aus VB heraus eine Exceldatei öffnen, eine Function in dieser Datei aufrufen und den Wert zurückgeben. Ursprünglich hatte ich eine Variante mit ExecuteExcel4Macro, aber dies geht in meiner (speziellen VB-) Umgebung nicht. Ich suche also so etwas wie:
Open pfad For Output As Dateinummer
wert = Dateinummer.getPrice(parameter)
Da kommt aber ein Fehler, "Objekt erforderlich". Hat jemand eine Idee wie ich das angehen muss ?
Vielen Dank & Gruss,
Bastian

Bild

Betrifft: AW: Datei öffnen und Function darin aufrufen
von: Bert
Geschrieben am: 24.03.2005 12:28:15
Siehe Hilfe: Application.Run
Bert
Bild

Betrifft: AW: Datei öffnen und Function darin aufrufen
von: bastian
Geschrieben am: 24.03.2005 14:20:38
Hi Bert,
vielen Dank, das geht in die richtige Richtung. Ich möchte aber nicht ein Makro (Sub)aufrufen sondern eine function() welche mir einen Rückgabewert liefert. Folgendes habe ich:
Dim excelPreisTabelle As New Excel.Application
excelPreisTabelle.Workbooks.Open (pfad)
Price = excelPreisTabelle.Application.Run("getPrice", datum, class)
excelPreisTabelle.Workbooks.Close
"getPrice" ist eine Funktion in der excelPreisTabelle welche in pfad liegt und datum und class sind die Eingabeparameter. Die Fehlermeldung sagt: "... kann das Makro nicht finden."
Das Beispiel in der Hilfe verwendet eine Makrovorlage .xlm, muss das so sein ?
Hast Du einen Tipp ?
Vielen Dank & Gruss,
Bastian
Bild

Betrifft: AW: Datei öffnen und Function darin aufrufen
von: Bert
Geschrieben am: 24.03.2005 16:20:32
Warum startest du die Datei in einer neuen Excelinstanz? Das funktioniert dann natürlich nicht.
Bert
Bild

Betrifft: AW: Datei öffnen und Function darin aufrufen
von: bastian
Geschrieben am: 24.03.2005 16:31:56
Hi Bert,
ich starte die Datei in einer neuen Excelinstanz, weil noch gar keine offen ist. Ich rufe dieses Makro aus einer Terminalumgebung auf, welche mit VB arbeitet. Ich muss doch erst mal die Datei öffnen um die enthaltene Funktion aufrufen zu können ... siehst Du das Problem ? Wie funktioniert es dann ?
Gruss & Dank,
Bastian
Bild

Betrifft: AW: Datei öffnen und Function darin aufrufen
von: K.Rola
Geschrieben am: 24.03.2005 18:28:03
Hallo,
Option Explicit
Sub app_Excel()
Dim objApp As Object, Pfad As String
Pfad = "C:\DeinOrdner\Excel\NützlicheFunktionen.xls"
Set objApp = CreateObject("Excel.Application")
objApp.Visible = True
objApp.Workbooks.Open Pfad
objApp.Run "NützlicheFunktionen.xls!UDF_Test", 2, 4
Set objApp = Nothing
End Sub
Wenn im Dateinamen Leerzeichen sind, musst du ihn in '' einschließen.

Gruß K.Rola

Der Fleiß ist die Wurzel aller Häßlichkeit.

Oscar Wilde


Bild

Betrifft: AW: Datei öffnen und Function darin aufrufen
von: bastian
Geschrieben am: 28.03.2005 22:41:21
Hi,
vielen Dank, so werde ich es nochmal probieren. Ich gebe Feedback ...
Gruss Bastian
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Datei öffnen und Function darin aufrufen"