¿Cómo creamos un código VBA de modo que podamos alternar entre 4 valores para una celda determinada dentro de una columna, y que no haga clic en ningún modo "Editar" después de hacer clic en la celda?
Los 4 valores son: Y, N, L y G.
El único código que podría recopilar (que se muestra a continuación) es problemático, ya que entra en un modo de edición al hacer clic, y no me permite realizar la función de celda de alternancia para una columna completa con el mismo código VBA:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Target.Row <> 1 Then Exit Sub
Select Case UCase(Target.Value)
Case Is = "Y"
Target.Value = "N"
Case Is = "N"
Target.Value = "L"
Case Is = "L"
Target.Value = "G"
Case Is = "G"
Target.Value = "Y"
End Select
End Sub
----- ¡Gracias por las respuestas! Por favor vea la imagen adjunta. La idea es poder cambiar el estado de cualquier elemento presentado. La columna de estado está en la columna L, y lo necesito para alternar entre Y-N-L-G, en lugar de usar cualquier lista desplegable.
fuente
Case "Y": Target.CurrentRegion.Columns(Target.Column).Replace "Y", "N"
Respuestas:
Prueba este formato
fuente
Puede probar este código VBA, lo probé antes de que lo haya publicado aquí y esté funcionando.
NÓTESE BIEN: Escribe Y (en Capital) y termina con Enter. Luego, cada vez que coloque el puntero de la celda o haga clic en el valor de la celda A2, cambiará de Y a N a L a G a Y.
Espero que esto te ayude.
fuente