
09/08/2008, 02:47
|
Colaborador | | Fecha de Ingreso: enero-2008 Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 17 años, 3 meses Puntos: 37 | |
Respuesta: AYUDA: modificar un string de excel Cita:
Iniciado por Reznorcito Estimados, recurro a sus conocimientso una vez mas.
Resulta que tengo un Excel con miles de campos numericos donde tengo q agregarles a cada uno un "guión" en el medio.
Todos los números son del tipo:
123 4567 8910
y necesito q esa misma celda quede de esta forma:
123-45678910
Entonces tengo que agregarle un guión y al mismo tiempo borrarle un espacio que tiene mas adelante (pq si fuese un solo espacio, simplemente reemplazo lso espacios por guiones, pero no es tan simple)
Estoy atento a recomendaciones.. ya q no tengo idea de Visual Basic (si fuese en C o Php facilmente podria hacerlo.. jejee)
Salu2!!! Hola,
en VB6 lo podrías hacer de esta forma (suponemos que la columna a modificar es la 3, la primera fila la 2 y la última 20900 y el nombre de la hoja a modificar 'Hoja1'):
Código:
Dim miXLS As String
Dim oExcel As Object, oWorkbook As Object
Dim sVar As String, sCelda As String, i As Long
miXLS = App.Path & "\MiExcel.xls"
Set oExcel = CreateObject("Excel.Application")
Set oWorkbook = oExcel.Workbooks.Open(miXLS)
oExcel.Sheets("Hoja1").Select
For i = 2 To 20900
sCelda = oExcel.Cells(i, 3)
sVar = Left(sCelda, 3) & "-" & Mid(sCelda, 5, 4) & Right(sCelda, 4)
oExcel.Cells(i, 3).Value = sVar
Next i
oExcel.ActiveWorkbook.Close True 'Guarda los cambios sin preguntar
oExcel.Quit
Set oWorkbook = Nothing
Set oExcel = Nothing
MsgBox "Se modificaron las celdas"
Te advierto que el código es bastante lento, no sé si habrá otra forma más rapida de hacerlo. |