Saltar al contenido

VBA: convertir texto a número

Al fin luego de tanto trabajar hemos encontrado la contestación de esta incógnita que algunos los lectores de nuestra web han tenido. Si deseas aportar algún dato puedes aportar tu información.

Solución:

Utilice la siguiente función (cambiar [E:E] al rango apropiado para sus necesidades) para evitar este problema (o cambie a cualquier otro formato como “mm/dd/yyyy”):

[E:E].Select
With Selection
    .NumberFormat = "General"
    .Value = .Value
End With

PD En mi experiencia, esta solución de VBA funciona SIGNIFICATIVAMENTE más rápido en grandes conjuntos de datos y es menos probable que bloquee Excel que usar el método del ‘cuadro de advertencia’.

Tuve este problema antes y esta fue mi solución.

With Worksheets("Sheet1").Columns(5)
    .NumberFormat = "0"
    .Value = .Value
End With

Esto se puede usar para encontrar todos los valores numéricos (incluso aquellos con formato de texto) en una hoja y convertirlos a uno solo (función CSng).

For Each r In Sheets("Sheet1").UsedRange.SpecialCells(xlCellTypeConstants)
    If IsNumeric(r) Then
       r.Value = CSng(r.Value)
       r.NumberFormat = "0.00"
    End If
Next

valoraciones y comentarios

Puedes añadir valor a nuestro contenido participando con tu veteranía en las notas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *