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.