Hacer click (o doble click) en una celda y que aparezca el valor 1 al segundo click el número 2

Cómo hacer para que al dar click con el mouse aparezca el valor 1 y así sucesivamente hasta el número 16. Estos números solo deben aparecer en el rango E24:E40.

1 respuesta

Respuesta
1

[Hola

Usa el evento "BeforeDoubleClick" de la hoja. Pega esto en el módulo de la hoja en donde quieres obtener el efecto al hacer doble click en alguna celda del rango en cuestión:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Application.Intersect(Target, [AE24:E40]) Is Nothing Then Exit Sub
If Target.Value >= 16 Then Exit Sub
Target.Value = Target.Value + 1
End Sub

Comentas

Abraham Valencia

Abraham. Muy buenas tardes. La macro funcionó. Te consulto pues posiblemente me exprese mal. Al segundo click dentro de ese rango como puedo hacer que aparezca un dos,  un tres al tercer click?

Saludos y gracias.

No entiendo, o sea el valor aparece solo en una celda de todo el rango y esa celda es solo en la que cada vez se hace el click ¿es eso?

Abraham Valencia

Hola Abraham. Tu macro funciona muy bien. Agrega el valor 1 en todo el rango que especificaste  cada vez que se da un doble click a cualquier celda.

Lo que quisiera es que una vez que ya en el rango se encuentre el valor 1 (hecho en el doble click anterior) aparezca el numero 2 y luego el 3 una vez que ya se encuentre en el rango el valor dos, así sucesivamente. 

¿Modificaste algo? Tal cual te lo he enviado (exceptuando una letra "A" que se "filtró" que se supone te debes haber dado cuenta), hace eso: en cualquier celda del rango indicado si se hace doble clik agrega un 1 pero si se hace doble click en la celda que tiene uno (cualquiera que ya lo tenga) colocará un 2, y luego un 3, y etc., ocurriendo eso en cualquier celda.

Abraham Valencia

Si Abraham. Vi esa "A".

Yo doy doble click en la celda E27 y aparece el 1. Lo que me gustaría es que una vez que la celda E27 este con ese valor ir a la celda E33 y al dar doble click parezca el numero 2 y al dar doble click en E39 aparezca el numero 3. Es como si estuviese entregando camisetas numeradas del 1 al 16 a distintas personas (distintas celdas)

Gracias por la buena atención. 

[Mira:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim nMax As Byte
Let nMax = Application.WorksheetFunction.Max(Range("E24:E40"))
If Application.Intersect(Target, [E24:E40]) Is Nothing Then Exit Sub
If Application.WorksheetFunction.CountA(Range("E24:E40")) = 0 Then Target.Value = 0: Exit Sub
If Target <> "" Then MsgBox "Celda llena": Exit Sub
If nMax = 16 Then MsgBox "al máximo": Exit Sub
Let Target.Value = nMax + 1
End Sub

Comentas

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas