Conversión de valores de datos del tipo de datos Text al formato de mayúsculas y minúsculas adecuado en Microsoft Access

Moderado: requiere aptitudes básicas de macro, codificación e interoperabilidad.

Este artículo se aplica a un archivo de base de datos de Microsoft Access .mdb o .accdb.

Resumen

En este artículo se describe cómo convertir los valores de datos del tipo de datos Text al formato de mayúsculas y minúsculas adecuado.

Más información

Los valores de datos del tipo de datos Text se pueden convertir al formato de mayúsculas y minúsculas adecuado mediante uno de los métodos siguientes:

  • Método 1: Uso de la función de conversión de cadena Built-In
  • Método 2: Usar una función User-Defined

Nota Antes de usar cualquiera de estos métodos, cree una tabla de ejemplo denominada MyTestTextList. Para ello, siga estos pasos:

  1. Cree una base de datos en blanco en Access.

  2. Cree una nueva tabla con los campos siguientes:

    Field Name: testText
    Data Type: Text
    
  3. Guarde la tabla como MyTestTextList.

  4. Agregue el siguiente ejemplo de testText a la tabla:

    the cOw jumped Over the MOON
    
    THE QUICK BROWN FOX jUmped over THE lazy DOG 
    
    
  5. Guarde la base de datos como MyTestDatabase.

Método 1: Uso de la función de conversión de cadenas integrada

  1. Abra la base de datos MyTestDatabase en Access.

  2. En el menú Insertar , haga clic en Consulta.

    Nota En Microsoft Office Access 2007 o una versión posterior, haga clic en Diseño de consultas en el grupo Otros de la pestaña Crear .

  3. En el cuadro de diálogo Nueva consulta , haga clic en Vista diseño.

    Nota En Access 2007 o una versión posterior, omita este paso.

  4. En el cuadro de diálogo Mostrar tabla , haga clic en Cerrar.

  5. En el menú Ver , haga clic en Vista SQL.

    Nota En Access 2007 o una versión posterior, haga clic en SQL en el grupo Resultados de la pestaña Diseño .

  6. Escriba el código siguiente en la vista SQL:

    SELECT testText, STRCONV(testText,3) as  TestText_in_Proper_Case FROM MyTestTextList
    
  7. En el menú Consulta , haga clic en Ejecutar.

    Nota En Access 2007 o una versión posterior, haga clic en Ejecutar en el grupo Resultados de la pestaña Diseño .

    La salida de la consulta es la siguiente:

    TestTextTestText_in_Proper_Case
    the cOw jumped Over the MOONThe Cow Jumped Over The Moon
    THE QUICK BROWN FOX jUmped overTHE lazy DOG The Quick Brown Fox Jumped Over The Lazy Dog
    

Nota El método StrConv(<Text,3>) convierte la primera letra de cada palabra del texto en mayúsculas. Este comportamiento solo se produce cuando las palabras están separadas por un espacio o una pestaña. StrConv no trata los caracteres especiales, como - o $, como separador de palabras.

Método 2: Usar una función definida por el usuario

  1. Abra la base de datos MyTestDatabase en Access.

  2. En el menú Insertar, haga clic en Módulo.

    Nota En Access 2007 o una versión posterior, haga clic en la flecha desplegable bajo Macro en el grupo Otros de la pestaña Crear .

  3. Escriba el código siguiente en el módulo actual y guarde los cambios.

    Function Proper(X)
    Capitalize first letter of every word in a field.
    
    Dim Temp$, C$, OldC$, i As Integer
    
    If IsNull(X) Then
    
    Exit Function
    
    Else
    
    Temp$ = CStr(LCase(X))
    
    ' Initialize OldC$ to a single space because first
            ' letter must be capitalized but has no preceding letter.
    
    OldC$ = " "
    
    For i = 1 To Len(Temp$)
                    C$ = Mid$(Temp$, i, 1)
                    If C$ >= "a" And C$ <= "z" And (OldC$ < "a" Or OldC$ > "z") Then
                          Mid$(Temp$, i, 1) = UCase$(C$)
                    End If
                    OldC$ = C$
             Next i
    
    Proper = Temp$
    
    End If
    
    End Function
    

    Nota Debe especificar La base de datos de comparación de opciones en la sección "Declaraciones" de este módulo para que la función funcione correctamente.

  4. En el menú Archivo , haga clic en Cerrar y volver a Microsoft Access.

    Nota En el menú Archivo , haga clic en Cerrarpara Access 97.

  5. En el menú Insertar , haga clic en Consulta.

    Nota En Access 2007 o una versión posterior, haga clic en Diseño de consultas en el grupo Otros de la pestaña Crear .

  6. En el cuadro de diálogo Nueva consulta , haga clic en Vista diseño.

    Nota En Access 2007 o una versión posterior, omita este paso.

  7. En el cuadro de diálogo Mostrar tabla , haga clic en Cerrar.

  8. En el menú Ver , haga clic en Vista SQL.

    Nota En Access 2007 o una versión posterior, haga clic en SQL en el grupo Resultados de la pestaña Diseño .

  9. Escriba el código siguiente en la vista SQL:

    SELECT testText, proper(testText) as  testText_in_Proper_Case FROM MyTestTextList
    

    Observe que esta consulta es similar a la consulta del método 1. Esto es excepto para la llamada de función.

  10. En el menú Consulta , haga clic en Ejecutar.

    Nota En Access 2007 o una versión posterior, haga clic en Ejecutar en el grupo Resultados de la pestaña Diseño .

    La salida de la consulta es la siguiente:

    TestTextTestText_in_Proper_Case
    the cOw jumped Over the MOONThe Cow Jumped Over The Moon
    THE QUICK BROWN FOX jUmped overTHE lazy DOG The Quick Brown Fox Jumped Over The Lazy Dog
    

Aunque la salida de ambos métodos es similar, método 2 ofrece la flexibilidad para seleccionar cualquier formato de caso. Esto incluye un separador de palabras elegido, como - o _. Puede definir el formato de mayúsculas y minúsculas necesario o puede definir un separador de palabras. Puede hacerlo si modifica la función Adecuada que se menciona en el paso 3.