# VBA-Code aufrufen



## Guest (25. Okt 2004)

Hallo!

Ich habe etwas in Java programmiert und etwas in VBA.

Nun würde ich gerne in Java den VBA-Code aufrufen,
hat jemand eine Idee, wie man das realisiert?

Vielen Dank schon Mal!


----------



## Sky (25. Okt 2004)

Hast Du eine *.exe aus deinem VBA-Code gemacht? Dann guckst Du hier.


----------



## Guest (25. Okt 2004)

:idea: Das wäre natürlich ein Möglichkeit...daran hatte ich irgendwie nicht gedacht...
Kann man denn aus VBA eine Exe-Datei erstellen?
Und wenn ja, wie geht das?


----------



## Sky (25. Okt 2004)

Habe leider schneller geantwortet als nachgedacht *schäm* 

Aus VBA kann man natürlich keine .exe erstellen. Das geht nur mit VB. VBA läuft ja nur eingebettet in irgendwelchen Programmen, wie z.B. Excel, Word oder Access.


----------



## dotlens (25. Okt 2004)

also 1. würd ich den code in java portieren, da du sonst gleich alles in vb schreiben kannst

und 2. aus vba machd man doch exe? vbs ist doch eingebettet, oder hab ich mich da vertan?

wenn du exe files machen willst, google mal n bisschen...


----------



## DP (25. Okt 2004)

auf den code selbst kannste nicht zugreifen. kannst wie schon geschrieben nur die exe aufrufen.

vbs = vb-script
vba = vb for applications
vb = vb


----------



## dotlens (25. Okt 2004)

vb = vb  das find ich wiedermal gute gleichsetzung 

aber danke für das andere...


----------



## Calamitous (25. Okt 2004)

vba code nix exe möglich (guter Satz 
wie schon erwähnt "Visual Basic *for* Applications -> nix eigenständiges


----------



## Pulvertoastman (25. Okt 2004)

Eventuell ist ja Jacob dein Freund?
http://sourceforge.net/projects/jacob-project/


----------



## Sky (25. Okt 2004)

Ansonsten habe ich mal die Frage: Wie umfangreich ist denn dein VBA-Code? Ich tendiere nämlich zu der Aussage von *dotlens*: Einfach den Code nach JAVA portieren.
Falls Du den VBA-Code speziell für irgendwelche WORD- oder EXCEL-Sachen brauchst, dann kann ich sagen, dass auch dafür Schnittstellen von JAVA aus gibt.


----------



## Bleiglanz (26. Okt 2004)

google mal nach java ole bridge usw. 

es gibt schon irgendwas, wie man von java aus OLE bzw. ActiveX Komponenten aufrufen kann


----------



## Guest (26. Okt 2004)

Erst mal vielen Dank für die vielen Antworten!  
Habe noch ne Frage: :?: 
Wie portiert man denn VBA-Code in JAVA,
kann mir darunter nicht so wirklich was vorstellen,
bzw. ich habe keine Ahnung wie das gehen soll?
Den VBA-Code brauche ich für Outlook,
der ist aber nicht wirklich umfangreich...

Liebe Grüße


----------



## Sky (26. Okt 2004)

Portieren heißt eigentlich nochmal machen, nur in einer anderen Sprache   Wobei: Du musst natürlich nicht das Rad neu erfinden. Es geht im wesentlichen darum die Syntax zu ändern... 
Beispiel:

```
// VBA
var meineVariable = 1; // Ging doch so, oder?

// Java
int meineVariable = 1;
```

Was machst Du denn genau mit dem VBA-Code?? Ist es vielleicht möglich deine Outlook-Geschichte über 
	
	
	
	





```
Runtime.getRuntime().exec(...)
```
 auszuführen!?


----------



## Pulvertoastman (26. Okt 2004)

Bleiglanz hat gesagt.:
			
		

> es gibt schon irgendwas, wie man von java aus OLE bzw. ActiveX Komponenten aufrufen kann


Ja, man kann nämlich COM Objekte über JACOB aufrufen (Siehe mein Posting oben). Damit ließe sicich auch die Outlook Geschichte relaisieren, da man hier auf das gleiche Programmiermodell zurückgreifen kann, wie man es ssonst aus anderen VBA Applikationen her auch machen würde.


----------



## Guest (26. Okt 2004)

Das lässt sich leider nicht mit der Runtime-Klasse realisieren.

Möchte ein Email-Fenster öffnen, in dem Empfänger, Betreff, Text und ein Anhang eingefügt wird.
Das hat leider mit Mailto nicht richtig funktioniert...
Deswegen suchen ich jetzt nach einer neuen Lösung.

Glaube, dass portieren wird nicht ganz funktionieren, werde es mir aber gleich mal anschauen...

Möchte jetzt erst mal den Vorschlag von Pulvertoastman verstehen  :idea: ,
bzw. ob das eine realistische Lösung für mein Problem ist.

Vielen Dank! :wink:


----------



## DP (26. Okt 2004)

kann man mit java und dem jacob da auf oledb zugreifen?!

sonst muss ich für ein tool extra mein vb auffrischen 

danke


----------



## Guest (26. Okt 2004)

:!: Zur Info:Hab grad gelesen das Java COM Bridge(Jacob) etwas veraltet wäre und EZ JCOM besser wäre.


----------

