Autor Thema: @ReplaceSubstring in Script  (Gelesen 4151 mal)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
@ReplaceSubstring in Script
« am: 15.01.03 - 14:09:16 »
Hallo Leute,

ich habe aus irgendeiner Quelle folgendes, was ziemlich genau das ist was ich benötige :

Function KillUmlaute ( s As String ) As String
 strformula = { @ReplaceSubString("} + s + {"; "ä":"ö":"ü":"ß":"Ä":"Ö":"Ü"; "ae":"oe":"ue":"ss":"Ae":"Oe":"Ue" ) }
 nStr = Evaluate( strformula )
 KillUmlaute = nstr(0)
End Function
 
Und zum Testen folgender Aufruf
 
Sub Click(Source As Button)
 Dim s As String
 s="ä ü ö ß Ä Ü Ö "
 Msgbox KillUmlaute(s)
End Sub


Nur leider funktioniert hier gar nichts.
Gibt es eine Chance dass hier zum Laufen zu bringen ?

Ciao

Don Pasquale

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:@ReplaceSubstring in Script
« Antwort #1 am: 15.01.03 - 14:13:26 »
nun, zum einen habe ich das mal geschrieben.

habe dein Posting 1:1 in eine neue Schaltfläche Kopiert und alles works as designed.

 ??? ??? ???
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Till_21

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • I love Germany
Re:@ReplaceSubstring in Script
« Antwort #2 am: 15.01.03 - 14:17:40 »
try this :

Function ReplaceSubstring(Byval txt As String, Byval from_str As String, Byval to_str As String) As String
   Dim pos As Integer
   Dim new_text As String
   Dim from_len As Integer
   
   from_len = Len(from_str)
   Do While Len(txt) > 0
      pos = Instr(txt, from_str)
      If pos = 0 Then
         new_text = new_text & txt
         txt = ""
      Else
         new_text = new_text & _
         Left$(txt, pos - 1) & to_str
         txt = Mid$(txt, pos + from_len)
      End If
   Loop
   ReplaceSubstring = new_text
End Function

gruss / till

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:@ReplaceSubstring in Script
« Antwort #3 am: 15.01.03 - 14:25:46 »
Hi eknori,

Von Dir ist das ? Hätte ich mir denken können.  ;D

Ich hatt die Funktion in eine Skriptbibliothek gepackt,
deswegen funktionierte das nicht.

Stimmt : Wenn alles in einem Button steckt, dann funktioniert
es.

Kannst Du mir erklären, warum ich bei
nStr = Evaluate( strformula )
immer ein "Operation failed" bekomme
wenn ich die Function in eine Bibliothek packe ?


Ciao

Don Pasquale
« Letzte Änderung: 15.01.03 - 14:31:15 von Don Pasquale »

Offline Till_21

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • I love Germany
Re:@ReplaceSubstring in Script
« Antwort #4 am: 15.01.03 - 14:27:59 »

Kannst Du mir erklären, warum ich bei
nStr = Evaluate( strformula )
immer ein "Operation failed" bekomme
wenn ich die Function in eine Biblithek packe ?

Weil evaluate *** ist und deshalb nicht benutzt werden soll...

Gruss

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:@ReplaceSubstring in Script
« Antwort #5 am: 15.01.03 - 14:31:54 »
Hab den Code selber in einer LIB; und der Code funzt mit dieser Lib in ca 20 Datenbanken  ??? ???

eknori
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:@ReplaceSubstring in Script
« Antwort #6 am: 15.01.03 - 14:32:23 »
@Till21 : ***

Kannitverstan ?

Ciao
Don Pasquale

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:@ReplaceSubstring in Script
« Antwort #7 am: 15.01.03 - 14:34:16 »
@Till_21

Zitat
Weil evaluate *** ist und deshalb nicht benutzt werden soll...

So einfach kannst du dir das nicht machen. Ich habe einige Evaluate-Anweisungen in Bibliotheken und die laufen alle.

@Don Pasquale

schau auch mal hier nach

http://www.free.dominoserver.de/computer/noteslibrary.nsf/1af7bead26d85723c1256ca800382b3a/4b72e8439c418c6080256c9300736699?OpenDocument


Axel

Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:@ReplaceSubstring in Script
« Antwort #8 am: 15.01.03 - 14:40:41 »
Hab den Code selber in einer LIB; und der Code funzt mit dieser Lib in ca 20 Datenbanken  ??? ???

eknori

@eknori :

Also von vorne : Ich mach ja irgendwo was falsch:

Wenn ich folgendes in meine Bibliothek packe :

Function KillUmlaute ( s As String ) As String
    strformula = { @ReplaceSubString("} + s + {"; "ä":"ö":"ü":"ß":"Ä":"Ö":"Ü"; "ae":"oe":"ue":"ss":"Ae":"Oe":"Ue" ) }
    nStr = Evaluate( strformula )
------>    KillUmlaute = nstr(0)
End Function


Bekomme ich bei ----> ein Illegal paranthesis reference
das kann ich beheben mit
Dim nstr as Variant

Aber das Operation failed bei
    nStr = Evaluate( strformula )

da weiss ich nichts
ciao
Don Pasquale
« Letzte Änderung: 15.01.03 - 15:08:14 von Don Pasquale »

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:@ReplaceSubstring in Script
« Antwort #9 am: 15.01.03 - 14:50:04 »
Hi,

ich hab den Code mal in eine Bibliothek gepackt und funktioniert einwandfrei.

Hast du evt. irgendwo noch eine andere Funktion oder Routine die so heißt ?


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:@ReplaceSubstring in Script
« Antwort #10 am: 15.01.03 - 14:59:15 »
@Axel,

2 mal dieselbe Function in einer Bibliothek ?
Nein, zur Sicherheit habe ich aber eine 2 Function
mit kompett anderem Namen erstellt und dort habe ich das gleiche
Problem.

Ciao
Don Pasquale

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:@ReplaceSubstring in Script
« Antwort #11 am: 15.01.03 - 15:19:57 »
... hast du dir nStr mal im Debugger angeschaut? Es sieht danach aus, daß es kein Array ist...

ata
Grüßle Toni :)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:@ReplaceSubstring in Script
« Antwort #12 am: 15.01.03 - 15:29:24 »
@ata:

???
Ich habe es doch 2 Zeilen vorher als Variant deklariert.

Ciao

Don Pasquale

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:@ReplaceSubstring in Script
« Antwort #13 am: 15.01.03 - 15:35:55 »
... was ist in der Variablen "s" tatsächlich drin, ist der String sauber...

ata
Grüßle Toni :)

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:@ReplaceSubstring in Script
« Antwort #14 am: 15.01.03 - 15:39:32 »
@Till_21

... ich verwende Evaluate in einigen Libs und hatte damit noch nie Probleme...

... meine Frage ein Posting zurück hat sich geklärt, ich werde deinen Code mal bei mir ausprobieren...

ata
Grüßle Toni :)

Offline Till_21

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • I love Germany
Re:@ReplaceSubstring in Script
« Antwort #15 am: 15.01.03 - 15:44:05 »
sorry zusammen, ich war ein wenig voreilig...
habe nur den betreff gelesen und ein replacesubstring-ersatz in script gepostet...

das mit den umlauten habe ich nicht gelesen, und meine gepostete function x-mal zu verschachteln, ist sicherlich
auch nicht das performanteste...

gruss / till

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:@ReplaceSubstring in Script
« Antwort #16 am: 15.01.03 - 15:47:28 »
@Don

... den folgenden Code habe ich gerade getestet, und der funktioniert ohne Tadel...

Code
Function KillUmlaute ( s As String ) As String 
   Dim strFormula As String
   Dim nStr As Variant
   
   strformula = { @ReplaceSubString("} + s + {"; "ä":"ö":"ü":"ß":"Ä":"Ö":"Ü"; "ae":"oe":"ue":"ss":"Ae":"Oe":"Ue" ) } 
   nStr = Evaluate( strformula ) 
   KillUmlaute = nstr(0) 
End Function 

... bist du sicher, daß du wirklich nur einen String übergibst und nicht eventuell was leeres oder ein Array...

ata
Grüßle Toni :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz