Discussion:
Validación solo en minusculas, tal como se indica en el rango.
(demasiado antiguo para responder)
Alfonso
2009-01-11 23:39:34 UTC
Permalink
Hola a todos
He validado una columna, para que solo admita las 'letras' que tengo en otra
columna, dentro de la misma hoja, pero he tenido que incorporar en la
Validación-->Lista--Origen, todas las letras 'a','b','c','d','e','f',...y
así hasta 'ai', para que solo admita estas letras EN MINUSCULA, y me
funciona.
Mirando en los foros he visto y he intentado mejorar esta validacion
haciendo en la misma hoja una columna AA1: AA35 con las letras que quiero
validar, y en la columna siguiente, en AB1 poniendo la formula
=CONCATENAR("AA1:AA";CONTARA(AA:AA)) y en Validar-->Lista-->Origen:
=INDIRECTO($AB$1), para que cuando aumente las letras a incorporar en el
rango AA1:AA35, automaticamente me las incorpore en la validación, y
funciona pero con un matiz, admite tambien las letras en mayúsculas, y eso
es lo que deseo evitar.
No he conseguido que solo admita las letras que pongo en el rango (en
minuscula).
Alguna sugerencia.
Gracias y saludos.
Gabriel Raigosa
2009-01-12 00:14:21 UTC
Permalink
Saludos;

Solo MAYUSCULAS Validar celdas sin usar macros.
Datos > Validación, pestaña Configuración, Permitir:
Personalizada, Fórmula: =IGUAL(A1;MAYUSC(A1))
Donde A1 es la celda que estás validando (después puedes copiarla al
rango que quieras).

Solo Minusculas Validar celdas sin usar macros.
Datos > Validación, pestaña Configuración, Permitir:
Personalizada, Fórmula: =IGUAL(A1;MINUSC(A1))
Donde A1 es la celda que estás validando (después puedes copiarla al
rango que quieras).

Gabriel Raigosa
http://sites.google.com/site/misitioexcel/
Post by Alfonso
Hola a todos
He validado una columna, para que solo admita las 'letras' que tengo en otra
columna, dentro de la misma hoja, pero he tenido que incorporar en la
Validación-->Lista--Origen, todas las letras 'a','b','c','d','e','f',...y
así hasta 'ai', para que solo admita estas letras EN MINUSCULA, y me
funciona.
Mirando en los foros he visto y he intentado mejorar esta validacion
haciendo en la misma hoja una columna AA1: AA35 con las letras que quiero
validar, y en la columna siguiente, en AB1 poniendo la formula
=INDIRECTO($AB$1), para que cuando aumente las letras a incorporar en el
rango AA1:AA35, automaticamente me las incorpore en la validación, y
funciona pero con un matiz, admite tambien las letras en mayúsculas, y eso
es lo que deseo evitar.
No he conseguido que solo admita las letras que pongo en el rango (en
minuscula).
Alguna sugerencia.
Gracias y saludos.
Alfonso
2009-01-12 20:50:18 UTC
Permalink
Gracias Gabriel por tu respuesta y sugerencias, las tendré en cuenta si
fuera necesario.
Un saludo.
----------------------------
Post by Gabriel Raigosa
Saludos;
Solo MAYUSCULAS Validar celdas sin usar macros.
Personalizada, Fórmula: =IGUAL(A1;MAYUSC(A1))
Donde A1 es la celda que estás validando (después puedes copiarla al rango
que quieras).
Solo Minusculas Validar celdas sin usar macros.
Personalizada, Fórmula: =IGUAL(A1;MINUSC(A1))
Donde A1 es la celda que estás validando (después puedes copiarla al rango
que quieras).
Gabriel Raigosa
http://sites.google.com/site/misitioexcel/
Post by Alfonso
Hola a todos
He validado una columna, para que solo admita las 'letras' que tengo en
otra columna, dentro de la misma hoja, pero he tenido que incorporar en
la Validación-->Lista--Origen, todas las letras
'a','b','c','d','e','f',...y así hasta 'ai', para que solo admita estas
letras EN MINUSCULA, y me funciona.
Mirando en los foros he visto y he intentado mejorar esta validacion
haciendo en la misma hoja una columna AA1: AA35 con las letras que quiero
validar, y en la columna siguiente, en AB1 poniendo la formula
=INDIRECTO($AB$1), para que cuando aumente las letras a incorporar en el
rango AA1:AA35, automaticamente me las incorpore en la validación, y
funciona pero con un matiz, admite tambien las letras en mayúsculas, y
eso es lo que deseo evitar.
No he conseguido que solo admita las letras que pongo en el rango (en
minuscula).
Alguna sugerencia.
Gracias y saludos.
Héctor Miguel
2009-01-12 03:06:15 UTC
Permalink
hola, Alfonso !

(hasta donde se) si en las reglas de validacion escribes "la lista" en el cuadro de edicion/referencias...
dicha lista es "restrictiva" y la validacion (por lista) solo admite de la lista explicitamente indicada (pero)...
si la lista se toma de un rango, la mayoria de las funciones en hoja de calculo no distinguen entre (may/min)usculas
y dado que no puedes usar DOS reglas de validacion para una misma celda (me parece que)...
solo te queda combinar las reglas de validacion con formatos condicionales (p.e.)
que se pinte de negro la celda validada si se han puesto caracteres "validos" en la lista pero en mayusculas -?-

si la celda validada es [B2] prueba la siguiente formula en los formatos condicionales: =igual(b2,minusc(b2))=falso

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

__ OP __
He validado una columna, para que solo admita las 'letras' que tengo en otra columna, dentro de la misma hoja
pero he tenido que incorporar en la Validacion-->Lista--Origen, todas las letras 'a','b','c','d','e','f',...y asi hasta 'ai'
para que solo admita estas letras EN MINUSCULA, y me funciona.
... he visto y he intentado mejorar esta validacion haciendo en la misma hoja una columna AA1:AA35
con las letras que quiero validar, y en la columna siguiente
en AB1 poniendo la formula =CONCATENAR("AA1:AA";CONTARA(AA:AA))
y en Validar-->Lista-->Origen: =INDIRECTO($AB$1)
para que cuando aumente las letras a incorporar en el rango AA1:AA35
automaticamente me las incorpore en la validación, y funciona pero con un matiz
admite tambien las letras en mayúsculas, y eso es lo que deseo evitar.
No he conseguido que solo admita las letras que pongo en el rango (en minuscula)...
Héctor Miguel
2009-01-12 04:58:22 UTC
Permalink
hola (de nuevo), Alfonso !

no se que tanto (o el porque) sea tan necesario solo permitir el uso de minusculas en validaciones por lista desde rangos -?-
otra alternativa que podria serte de utilidad es aplicar en las celdas validadas (y siempre y cuando este disponible a los equipos)
(un estilo personalizado con... o) un tipo de fuente que muestre todo en mayusculas (o minusculas) p.e.

algunos tipos de letra que presentan solo mayusculas:
- Castellar
- Engravers MT
- Felix Titling
- Stencil
- Technic (este es del tipo "versalles")

algunos tipos de letra que presentan solo minusculas:
- Freshbot
- Poornut
- Pussycat

saludos,
hector.
Post by Héctor Miguel
(hasta donde se) si en las reglas de validacion escribes "la lista" en el cuadro de edicion/referencias...
dicha lista es "restrictiva" y la validacion (por lista) solo admite de la lista explicitamente indicada (pero)...
si la lista se toma de un rango, la mayoria de las funciones en hoja de calculo no distinguen entre (may/min)usculas
y dado que no puedes usar DOS reglas de validacion para una misma celda (me parece que)...
solo te queda combinar las reglas de validacion con formatos condicionales (p.e.)
que se pinte de negro la celda validada si se han puesto caracteres "validos" en la lista pero en mayusculas -?-
si la celda validada es [B2] prueba la siguiente formula en los formatos condicionales: =igual(b2,minusc(b2))=falso
__ OP __
He validado una columna, para que solo admita las 'letras' que tengo en otra columna, dentro de la misma hoja
pero he tenido que incorporar en la Validacion-->Lista--Origen, todas las letras 'a','b','c','d','e','f',...y asi hasta 'ai'
para que solo admita estas letras EN MINUSCULA, y me funciona.
... he visto y he intentado mejorar esta validacion haciendo en la misma hoja una columna AA1:AA35
con las letras que quiero validar, y en la columna siguiente
en AB1 poniendo la formula =CONCATENAR("AA1:AA";CONTARA(AA:AA))
y en Validar-->Lista-->Origen: =INDIRECTO($AB$1)
para que cuando aumente las letras a incorporar en el rango AA1:AA35
automaticamente me las incorpore en la validación, y funciona pero con un matiz
admite tambien las letras en mayúsculas, y eso es lo que deseo evitar.
No he conseguido que solo admita las letras que pongo en el rango (en minuscula)...
Alfonso
2009-01-12 20:49:00 UTC
Permalink
Gracias Héctor nuevamente por tu rápida respuesta y por tus sugerencias.
[>> (hasta donde se) si en las reglas de validacion escribes "la lista" en
el cuadro de edicion/referencias...
Post by Héctor Miguel
Post by Héctor Miguel
dicha lista es "restrictiva" y la validacion (por lista) solo admite de
la lista explicitamente indicada (pero)...
si la lista se toma de un rango, la mayoria de las funciones en hoja de
calculo no distinguen entre (may/min)usculas] Totalmente de acuerdo, y
así actua.
La verdad es que me daría igual que validara ambas, tanto en MAYUSCULAS
como en MINUSCULAS, es más seria mejor que validara ambas, por ahorro de
tiempo de las personas que introducen los datos, y podría 'aprovechar' la
validación que te comento, que es más práctica por cuanto que podría ampliar
el rango/columna, con más letras y automaticamente me las validaria. El
problema radica en que tengo macros tuyas, que recordarás, que me trasladan
los 'Nombres' que se insertan en unas filas con cada letra determinada de
unas hojas 'MASTERSDATOS', 'EXPERTOSDATOS' y 'TECNICOSDATOS', a otra
'LIQUIDACION', y si las 'letras' no aparecen bien en Mayusculas o bien en
Minusculas, según figuren en el rango validado, no me traslada los nombres
asociados a esas claves/letras a la hoja que antes si trasladaba, y yo como
bien sabes no se 'desentrañar' tus macros para hacer la pertinente
modificacion y que valide como valide siga trasladando, como antes, los
'Nombres' a la hoja que quiero.
Las macros tuyas que tengo son:

En la Hoja 'LIQUIDACION', (a donde traslada los 'Nombres' que se indican en
las filas de las otras hojas, por tener esta, en sus filas las instrucción
=TomarClientes)

"Private Sub Worksheet_Calculate()
Dim Celda As Range
Application.ScreenUpdating = False
Application.EnableEvents = False
On Error GoTo Salida
For Each Celda In Cells.SpecialCells(xlCellTypeFormulas)
If InStr(Celda.Formula, "TomarClientes") _
Then Celda.WrapText = False: Celda.WrapText = True
Next
Salida:
Application.EnableEvents = True
End Sub"

y en "Módulos", en 'Módulo 1'

Function TomarClientes(Clientes As Range, Claves As Range, Clave) As String
Dim Celda As Range, Fila As Long: TomarClientes = "": Fila = 1
For Each Celda In Claves
If Celda = Clave Then
If TomarClientes <> "" Then TomarClientes = TomarClientes & ", "
TomarClientes = TomarClientes & Clientes.Cells(Fila)
End If: Fila = Fila + 1
Next
End Function

Si se pueden modificar las macros para que me funcionen validen como
validen, bien, si no sigo con la validación explícita.

Gracias nuevamente y saludos.
---------------------------------------------------------
Post by Héctor Miguel
hola (de nuevo), Alfonso !
no se que tanto (o el porque) sea tan necesario solo permitir el uso de
minusculas en validaciones por lista desde rangos -?-
otra alternativa que podria serte de utilidad es aplicar en las celdas
validadas (y siempre y cuando este disponible a los equipos)
(un estilo personalizado con... o) un tipo de fuente que muestre todo en
mayusculas (o minusculas) p.e.
- Castellar
- Engravers MT
- Felix Titling
- Stencil
- Technic (este es del tipo "versalles")
- Freshbot
- Poornut
- Pussycat
saludos,
hector.
Post by Héctor Miguel
(hasta donde se) si en las reglas de validacion escribes "la lista" en el
cuadro de edicion/referencias...
dicha lista es "restrictiva" y la validacion (por lista) solo admite de
la lista explicitamente indicada (pero)...
si la lista se toma de un rango, la mayoria de las funciones en hoja de
calculo no distinguen entre (may/min)usculas
y dado que no puedes usar DOS reglas de validacion para una misma celda
(me parece que)...
solo te queda combinar las reglas de validacion con formatos
condicionales (p.e.)
que se pinte de negro la celda validada si se han puesto caracteres
"validos" en la lista pero en mayusculas -?-
si la celda validada es [B2] prueba la siguiente formula en los formatos
condicionales: =igual(b2,minusc(b2))=falso
__ OP __
Post by Alfonso
He validado una columna, para que solo admita las 'letras' que tengo en
otra columna, dentro de la misma hoja
pero he tenido que incorporar en la Validacion-->Lista--Origen, todas
las letras 'a','b','c','d','e','f',...y asi hasta 'ai'
para que solo admita estas letras EN MINUSCULA, y me funciona.
... he visto y he intentado mejorar esta validacion haciendo en la misma
hoja una columna AA1:AA35
con las letras que quiero validar, y en la columna siguiente
en AB1 poniendo la formula =CONCATENAR("AA1:AA";CONTARA(AA:AA))
y en Validar-->Lista-->Origen: =INDIRECTO($AB$1)
para que cuando aumente las letras a incorporar en el rango AA1:AA35
automaticamente me las incorpore en la validación, y funciona pero con un matiz
admite tambien las letras en mayúsculas, y eso es lo que deseo evitar.
No he conseguido que solo admita las letras que pongo en el rango (en minuscula)...
Héctor Miguel
2009-01-12 21:18:03 UTC
Permalink
hola, Alfonso !
La verdad es que me daria igual que validara ambas, tanto en MAYUSCULAS como en MINUSCULAS
es mas seria mejor que validara ambas, por ahorro de tiempo de las personas que introducen los datos
y podría 'aprovechar' la validacion que te comento... por cuanto que podria ampliar el rango/columna, con mas letras...
... tengo macros... que me trasladan los 'Nombres' que se insertan en unas filas con cada letra ...
y si las 'letras' no aparecen bien en Mayusculas o bien en Minusculas ...
... 'desentrañar'... macros para hacer la pertinente modificacion y que valide como valide siga trasladando ...
Function TomarClientes(Clientes As Range, Claves As Range, Clave) As String
Dim Celda As Range, Fila As Long: TomarClientes = "": Fila = 1
For Each Celda In Claves
If Celda = Clave Then
If TomarClientes <> "" Then TomarClientes = TomarClientes & ", "
TomarClientes = TomarClientes & Clientes.Cells(Fila)
End If: Fila = Fila + 1
Next
End Function
de: -> If Celda = Clave Then
a: -> If LCase(Celda) = LCase(Clave) Then

saludos,
hector.
Alfonso
2009-01-12 22:02:00 UTC
Permalink
Héctor, perfecto, como siempre. Gracias una vez más. Te diré tambien que he
hecho caso de tus advertencias con respecto a que tenía demasiados 'lios' en
este Libro y que podia 'estrumpirse', y ya tengo otro completamente
distinto, sencillo, práctico y rápido, manteniendo solo lo imprescindible,
ya que de tanto darle vueltas he conseguido simplificar todo su
funcionamiento, sin mayores problemas, hasta el momento.
Saludos
Alfonso
------------------------------
Post by Héctor Miguel
hola, Alfonso !
La verdad es que me daria igual que validara ambas, tanto en MAYUSCULAS
como en MINUSCULAS
es mas seria mejor que validara ambas, por ahorro de tiempo de las
personas que introducen los datos
y podría 'aprovechar' la validacion que te comento... por cuanto que
podria ampliar el rango/columna, con mas letras...
... tengo macros... que me trasladan los 'Nombres' que se insertan en
unas filas con cada letra ...
y si las 'letras' no aparecen bien en Mayusculas o bien en Minusculas ...
... 'desentrañar'... macros para hacer la pertinente modificacion y que
valide como valide siga trasladando ...
(segun parece) lo unico que necesitas modificar es la instruccion IF en la
Function TomarClientes(Clientes As Range, Claves As Range, Clave) As String
Dim Celda As Range, Fila As Long: TomarClientes = "": Fila = 1
For Each Celda In Claves
If Celda = Clave Then
If TomarClientes <> "" Then TomarClientes = TomarClientes & ", "
TomarClientes = TomarClientes & Clientes.Cells(Fila)
End If: Fila = Fila + 1
Next
End Function
de: -> If Celda = Clave Then
a: -> If LCase(Celda) = LCase(Clave) Then
saludos,
hector.
Loading...