Vie Abr 15, 2011 3:26 pm
- Código:
Public Function aCase(A As String, B As Integer) As String
On Error Resume Next
'==============================================================='
' AX: aCase '
' Uso: Call aCase(Texto, Procesar) '
' Procesar: 0 - Convierte a minúscula '
' : 1 - Convierte a mayúscula '
' : 2 - Convierte de minúscula a mayúscula y viceversa '
'==============================================================='
Dim C As String
Dim L As Long
Select Case B
Case 0
For L = 1 To Len(A)
C = Mid(A, L, 1)
Select Case Asc(C)
Case 193: C = Chr(225)
Case 201: C = Chr(233)
Case 205: C = Chr(237)
Case 211: C = Chr(243)
Case 218: C = Chr(250)
Case 220: C = Chr(252)
End Select
If Asc(C) >= 65 And Asc(C) <= 90 Then C = Chr(Asc(C) + 32)
aCase = aCase & C
Next L
Case 1
For L = 1 To Len(A)
C = Mid(A, L, 1)
Select Case Asc(C)
Case 225: C = Chr(193)
Case 233: C = Chr(201)
Case 237: C = Chr(205)
Case 243: C = Chr(211)
Case 250: C = Chr(218)
Case 252: C = Chr(220)
End Select
If Asc(C) >= 97 And Asc(C) <= 122 Then C = Chr(Asc(C) - 32)
aCase = aCase & C
Next L
Case 2
For L = 1 To Len(A)
C = Mid(A, L, 1)
Select Case Asc(C)
Case 193: C = Chr(225): GoTo Z
Case 201: C = Chr(233): GoTo Z
Case 205: C = Chr(237): GoTo Z
Case 211: C = Chr(243): GoTo Z
Case 218: C = Chr(250): GoTo Z
Case 220: C = Chr(252): GoTo Z
Case 225: C = Chr(193): GoTo Z
Case 233: C = Chr(201): GoTo Z
Case 237: C = Chr(205): GoTo Z
Case 243: C = Chr(211): GoTo Z
Case 250: C = Chr(218): GoTo Z
Case 252: C = Chr(220): GoTo Z
End Select
If Asc(C) >= 97 And Asc(C) <= 122 Then C = Chr(Asc(C) - 32): GoTo Z
If Asc(C) >= 65 And Asc(C) <= 90 Then C = Chr(Asc(C) + 32): GoTo Z
Z:
aCase = aCase & C
Next L
End Select
End Function
Esta función sirve para cambiar las letras mayúsculas a minúsculas y viceversa.
Modo de Uso:
- Código:
Call aCase(Texto, Procesar)
Procesar:
0: Con el cero convertirá todas las letras a minúsculas...Si el texto fuera "Hola Mundo", entonces quedaría "hola mundo".
1: Con el uno convertirá todas las letras a mayúsculas...Si el texto fuera "Hola Mundo", entonces quedaría "HOLA MUNDO"
2: Con el dos convertirá las letras mayúsculas a minúsculas y las minúsculas a mayúsculas...Si el texto fuera "Hola Mundo", entonces quedaría "hOLA mUNDO".
Esta función admite a las vocales acentuadas tanto mayúsculas como minúsculas (Áá, Éé, Íí, Óó, Úú), por lo que no hay problema por esa parte. También la letra U con diéresis (Üü). Dejo un ejemplo...
[Tienes que estar registrado y conectado para ver este vínculo]
Saludos.