excel: iz VBS naložiti VBA makro ?

stein

Fizikalc
16. sep 2007
19.575
1
36
A gre iz VBS skripte naložiti makro v Excel ?

Rad bi naredil tole v skripti (VBS, sicer lahko tudi kaj drugega):
- poženi excel
- v excel naloži en XLS fajl (tabela) (ime fajla je na voljo VBS skripti)
- ta tabela se obdela z enim Excel makrotom

(prva dva koraka že delujeta)

Če bi makro bil del XLS fajla, bi bilo lahko, ampak jaz dobivam te fajle "suhe", torej vsebuje samo celice, brez makrotov.


Druga možnost je prevesti VBA makro v VBS ukaze, samo to mi je še težje.


LP,
David
(VB začetnik)
 

Leska

Pripravnik
8. sep 2007
268
0
16
Za VBS nisem prepričan, ampak nekaj podobnega sem pred leti počel z Delfijem in Wordom (koda spodaj): dodaš nov modul, vanj prepišeš VBA ukaze, poženeš in modul zbrišeš. HTH.

Koda:
procedure TMain.RunVBCode (code: wideString);
const vbext_ct_StdModule = $00000001;
var VBC: OleVariant;
begin
 VBC:= w.ActiveDocument.VBProject.VBComponents.Add
   (componentType:=vbext_ct_StdModule);
 VBC.CodeModule.InsertLines(1,
  'Public Sub XXtmp' + code + #13'End Sub');
 w.application.run(MacroName:= 'XXtmp');
 w.ActiveDocument.VBProject.VBComponents.Remove(VBC);
 VBCode:= '';
end;