Haciendo ADECUADOS ciertas palabras Saltar

September 10

Terry utiliza la función de hoja ADECUADO todo el tiempo para cambiar el caso de texto en sus hojas de trabajo. Se pregunta si hay una manera de instruir a la función de hacer caso omiso de ciertas palabras, para que no se inician con una letra mayúscula. No es inusual para él tener que volver después de usar adecuada y cambiar palabras como "el" o "una" a todos en minúsculas. Si apropiados podría omitir el cambio de esas palabras de forma automática, sería de gran ayuda.

Una forma de abordar esto es utilizar la función de hoja SUSTITUTO en conjunto con la función apropiada. Por ejemplo, si quieres encontrar instancias de la palabra "El" por "el", puede utilizar el siguiente:

= SUSTITUIR (ADECUADO (A1), "El", "el")

Tenga en cuenta la inclusión del espacio antes y después de lo que usted está buscando y lo que va a sustituir. Esto asegura que sólo palabras completas se modifican. También se asegura de que no se realizan cambios en el principio del valor de celda o en el extremo.

Si querías buscar otras palabras que necesitaban reemplazar, simplemente puede aumentar el número de casos de SUSTITUTO en la fórmula:

= SUSTITUIR (SUSTITUTO (SUSTITUTO (ADECUADO (A1), "El",
"El"), "Una", "an"), "Y", "y")

Obviamente, esto puede ser un poco incómodo si usted tiene un montón de palabras que desea excluir de ser modificados. En ese caso, tendrá que recurrir al uso de una macro. La macro siguiente, escrito como una función definida por el usuario, se puede utilizar para convertir todas las palabras en una celda a mayúsculas iniciales (al igual adecuada), pero asegúrese de que ciertas palabras definidas son minúsculas.

Función Título (ByVal ref Como Range) As String
Dim vaArray como variante
Dim c As String
Dim i As Integer
Dim J As Integer
Dim vaLCase como variante
Dim str As String

'Array contiene términos que deben estar en minúsculas
vaLCase = Array ("a", "an", "y", "en", "es", _
"De", "o", "la", "a", "con")

c = StrConv (ref, 3)
'Dividir las palabras en una matriz
vaArray = división (c, "")
Para i = (LBound (vaArray) 1) Para UBound (vaArray)
Para J = LBound (vaLCase) Para UBound (vaLCase)
'Comparar cada palabra en la célula contra la
'Lista de palabras para permanecer en minúsculas. Si el
'Versiones superiores coinciden entonces reemplazar el
'Palabra celda con la versión en minúsculas.
Si UCase (vaArray (i)) = UCase (vaLCase (J)) Entonces
vaArray (i) = vaLCase (J)
End If
Siguiente J
Siguiente i

'Reconstruir la frase
str = ""
Para i = LBound (vaArray) Para UBound (vaArray)
str str = & "" & vaArray (i)
Siguiente i

Título = Trim (str)
End Function

Para utilizar la macro, todo lo que necesita hacer es utilizar el siguiente en la hoja de cálculo:

= Título (A1)

También puede encontrar un enfoque adicional en lograr la conversión deseada en este sitio:

http://dmcritchie.mvps.org/excel/proper.htm

ExcelTips es su fuente de capacitación rentable Microsoft Excel. Esta punta (10.560) se aplica a Microsoft Excel 2007, 2010, y 2013. Usted puede encontrar una versión de este consejo para el más viejo interfaz de menú de Excel aquí: Hacer ADECUADO Saltar ciertas palabras.