Εμφάνιση ενός μόνο μηνύματος
  #2  
Παλιά 20-11-19, 17:55
kapetang Ο χρήστης kapetang δεν είναι συνδεδεμένος
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Θα πρέπει να αποσαφηνίσουμε το ζητούμενο:

1) Αν τελικός μας στόχος είναι η μετατροπή του κειμένου σε κεφαλαία, δεν απαιτείται να δημιουργήσουμε κάποια συνάρτηση χρήστη.

Μπορούμε να χρησιμοποιήσουμε τον τύπο: Replace(UCase([Textbox2]);"ς";"Σ").

2) Αν όμως θέλουμε, διατηρώντας την πεζή γραφή, να αλλάξουμε το τελικό «σ» σε «ς», χρειάζεται συνάρτηση χρήστη.

Μια τέτοια είναι η παρακάτω.

Κώδικας:
Public Function ReplaceEndSigma(str As Variant) As Variant
    Dim s As Variant, sF As Variant, sR As Variant, i As Long
    
    sF = Array("σ ", "σ.", "σ,", "σ:", "σ;")    '<--πρέπει να αντικατασταθούν
    sR = Array("ς ", "ς.", "ς,", "ς:", "ς;")    '<--θα αντικαταστήσουν τα παραπάνω
    
    s = str
    If Len(s) > 0 Then
        For i = 0 To UBound(sF)
            s = Replace(s, sF(i), sR(i))
        Next
    End If
        
   ReplaceEndSigma = s
   
End Function
Δες και το ερώτημα qryTest στη συνημμένη ΒΔ
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb Test_1.mdb (864,0 KB, 4 εμφανίσεις)
Απάντηση με παράθεση