Saltar al contenido

Lista valores unicos con macros


Recommended Posts

publicado

Hola, he grabado un macro de una lista de validación de datos con formula, me funciona perfectamente...

Pero al reproducir el código que me devolvió el grabador de macros no corre me podrían ayudar por favor...

    Columns("C:C").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=contar.si(c:c,c1)=1"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = "1"
.ErrorTitle = "1"
.InputMessage = "1"
.ErrorMessage = "2"
.ShowInput = True
.ShowError = True
End With[/CODE]

El problema se presenta en esta línea

.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:= _

xlBetween, Formula1:="=contar.si(c:c,c1)=1"

me manda error como lo puedo solucionar.

Sería brutal si podría manipular este código... gracias por su tiempo

publicado

no entiendo bie lo que hace tu macro pero aqui va la linea corregida

.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=" & WorksheetFunction.CountIf(Range("c:c"), 1)

publicado

Gracias, no funciona

Un ejemplo:

todos sabemos que un código de una lista debe ser único y no puede repetirse... llave principal

Usando validación de datos he seleccionado en este caso la columna c:c y e usado una formula personalizatda ("=contar.si(c:c,c1)=1") es así que si se repite un código no lo acepta, por que no se cumple la condición...

como dije en la introducción he grabado la secuencia y al volverlo a ejecutar en el código no me funciona...

como puedo corregirlo.

publicado

'aplicando una hoja en change
'y con la ayyuda de Bond007 he pensado en este codigo

if worksheetfunction.countif(range(target.column & ":" target.column), cells(target.row, target.column) ) =1 then
else
'mensaje de error
'se repite registro
end if[/CODE]

creo que sería una alternativa al código de arriba, que dicen :')

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.