Hallo,

das Ganze ist ein Fehler in OOo 3.1.1 (ich glaube in 3.x gesamt), in z.B. 2.4.0 
tritt das Problem nicht auf

Sigrid Carrera schrieb:
> sValue = ReplaceString(sValue, ".",",")
> (Ist wohl ein Bestandteil der Depot-Bibliothek, die von OOo
> mitgeliefert wird.) 

ja, und wird in OOo 3.1.1 nicht richtig erkannt, denn es wird dort im Prinzip 
in der Funktion GetCurrentRate die Ladeanweisung:

GlobalScope.BasicLibraries.LoadLibrary("Tools")

sowie die Änderung von:
sValue = ReplaceString(sValue, ".",",")

in:
sValue = Tools.Strings.ReplaceString(sValue, ".",",")

> Kann mir jemand mit besseren Makro-Kenntnissen dabei weiterhelfen? Wie
> bekomme ich das Makro doch noch zum Funktionieren? 

Es ist wohl am Einfachsten [1] die 2 Funktionen:

GetCurrentRate
ReplaceString

ans Ende des Codes der Datei beispiel_aktien.ods zu kopieren.

Die Funktion GetCurrentRate befindet sich in der OOo-Bibliothek "Depot" im 
Modul "Internet" und die Funktion ReplaceString lautet (entnommen aus OOo 
2.4.0):

' Replaces the string "OldReplace" through the String "NewReplace" in the String
' 'BigString'
Function ReplaceString(ByVal Bigstring, NewReplace, OldReplace as String)  as 
String
Dim i%, OldReplLen%, BigLen%

        If NewReplace <> OldReplace Then
                OldReplLen = Len(OldReplace)
                i = 1
                Do
                        Biglen = Len(BigString)
                        i = Instr(i,BigString,OldReplace)
                        If i <> 0 then
                                BigString = Mid(BigString,1,i-1) & NewReplace & 
Mid(BigString,i + OldReplLen,BigLen  - i + 1 - OldReplLen
                                i = i + Len(NewReplace)
                        End If
                Loop until i = 0
        End If
        ReplaceString = BigString
End Function



Gruß
Jörg

[1]
'Richtiger' wäre die ganz am Anfang genannten Änderungen in der Funktion 
GetCurrentRate zu machen. Da diese jedoch Bestandteil der OOo-Bibliotheken ist 
müßte zunächst der Schreibschutz der entsprechenden Bibliothek "Depot" entfernt 
werden um die Änderung vornehmen zu können. 
Quick und dirty ginge es auch die Änderungen direkt in der Datei Internet.xba 
zu machen wobei dann statt:
GlobalScope.BasicLibraries.LoadLibrary("Tools") einzutragen wäre: 
GlobalScope.BasicLibraries.LoadLibrary(&quot;Tools&quot;)

Wesentlich besser ist es m.E. sich nie auf das Vorhandensein und korrekte 
funktionieren der OOo-Bibliotheken zu verlassen, weil auf unbekannten Systemen 
diese Bibliotheken verändert oder fehlend sein können. 
Im Normalfall wäre also der Code der hier benötigten 2 Funktionen adäquat in 
der Datei beispiel_aktien.ods mitzuliefern. 
Im speziellen Fall war das aber bewußt nicht beabsichtigt, weil ja gezeigt 
werden sollte wie mitgelieferte OOo-Bibliotheken genutzt werden können.  


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org

Antwort per Email an