En una celda en excel solo se pueda escribir números y no letras

De bolivia, mi pregunta es como puedo hacer para que en
Una celda en excel solo se pueda escribir números y no letras

1

1 Respuesta

11.625 pts. Hoy por ti, mañana por mi

Te pongo este método haber si te vale. Dentro del proyecto VBA elige la hoja donde tengas la celda ó celdas en cuestión y solicita el evento selectionchange de worksheet, es decir:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

para controlar que solo se escriban números utiliza esta función:

isnumeric (valor) que devuelve valores de verdadero o falso.

Te pongo un ejemplo.

La celda A1 es una de ellas. Entonces:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If IsNumeric(Range("A1").Value) = False Then

MsgBox "No es numero. Inténtelo de nuevo"

Range("A1").Select

End If

End Sub

Si introduzco alguna letra dentro de esta celda, cuando cambie de celda me saltará el evento y volverá de nuevo a esta celda.

Muchas gracias, de gran utilidad, en vez de A1 por ejemplo elegí un rango A1:b100 pero no necesito introducir en todas esas celdas un numero sino dejar en blanco algunas celdas y no me deja pasar celdas en blanco dentro de ese rango A1:b100 si puedes ayudarme por favor

Vamos a ampliar el código para solucionar tu problema:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Const rango = "A1:B100"
Dim celda As Range
For Each celda In Range(rango)
If IsNumeric(celda) = False Then
If celda.Value = "" Then
GoTo continuar
Else:
MsgBox "No es número. Inténtelo de nuevo"
celda.Select
End If
End If
continuar:
Next celda
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas