von erikafuchs » Do, 30.08.2012 19:26
Ich weiss, dass VBA nur sehr eingeschränkt in StarBasic "übersetzt" werden können.
Wurde das schon mal gefragt:
Wie ist es mit dem umgekehrten Weg?
Ich habe vor vielen Jahren mal angefangen VBA zu lernen, habe aber alle Handbücher verkauft und mich voll und ganz auf openOffice umgestellt. Ich habe ein kleines Makro zur Erzeugung eines Dialogs für Calc geschrieben. Jetzt wurde ich gebeten, es in VBA zu übersetzen. Kann man das in VBA "übersetzen" und mit Anpassungen in Excel zum Laufen bringen? Ähnlichkeiten sind ja da.
Es ist wirklich nur ein kleines Programm. Vielleicht gibt es ja hier jemanden der VBA beherrscht und sich das ansehen kann:
Code: Alles auswählen
dim n as integer
dim Namen(30)
Sub Liste
oSheet=ThisComponent.sheets.getByName("DAX30_Wochenkurse")
pSheet=ThisComponent.sheets.getByName("Statistiken")
DialogLibraries.LoadLibrary( "Standard" )
oDialog=createUnoDialog(DialogLibraries.Standard.Dialog1)
oListe=oDialog.getControl("ListBox1")
oListe.multipleMode=true
for n=0 to 29
Namen(n)=oSheet.getCellByPosition(n+2,0).string
next
oListe.addItems(Namen,0)
oDialog.execute()
End Sub
sub auslesen
dim oPosListe as object
pSheet.getCellRangeByPosition(2,42,35,42).ClearContents(5)
oPosListe=oListe.getSelectedItemsPos()
for n=0 to UBound(oPosListe)
pSheet.getCellByPosition(oPosListe(n)+2,42).value=1
next
oDialog.endexecute()
end sub
Pit
Ich weiss, dass VBA nur sehr eingeschränkt in StarBasic "übersetzt" werden können.
Wurde das schon mal gefragt:
Wie ist es mit dem umgekehrten Weg?
Ich habe vor vielen Jahren mal angefangen VBA zu lernen, habe aber alle Handbücher verkauft und mich voll und ganz auf openOffice umgestellt. Ich habe ein kleines Makro zur Erzeugung eines Dialogs für Calc geschrieben. Jetzt wurde ich gebeten, es in VBA zu übersetzen. Kann man das in VBA "übersetzen" und mit Anpassungen in Excel zum Laufen bringen? Ähnlichkeiten sind ja da.
Es ist wirklich nur ein kleines Programm. Vielleicht gibt es ja hier jemanden der VBA beherrscht und sich das ansehen kann:
[code]dim n as integer
dim Namen(30)
Sub Liste
oSheet=ThisComponent.sheets.getByName("DAX30_Wochenkurse")
pSheet=ThisComponent.sheets.getByName("Statistiken")
DialogLibraries.LoadLibrary( "Standard" )
oDialog=createUnoDialog(DialogLibraries.Standard.Dialog1)
oListe=oDialog.getControl("ListBox1")
oListe.multipleMode=true
for n=0 to 29
Namen(n)=oSheet.getCellByPosition(n+2,0).string
next
oListe.addItems(Namen,0)
oDialog.execute()
End Sub
sub auslesen
dim oPosListe as object
pSheet.getCellRangeByPosition(2,42,35,42).ClearContents(5)
oPosListe=oListe.getSelectedItemsPos()
for n=0 to UBound(oPosListe)
pSheet.getCellByPosition(oPosListe(n)+2,42).value=1
next
oDialog.endexecute()
end sub
[/code]
Pit