Extraer datos de una celda

17/02/2004 - 13:16 por MN | Informe spam
Hola,
tengo el siguiente problema:
Tengo deferentes celdas hacia abajo que contienen un texto asi:
[001 VIGENTE 00/00/0000 20/02/2004 154.865,0000
0,000] (todo este texto en una celda, sin parentesis)

y me gustaria dejarlo en diferentes celdas para poder trabajar con los
datos.

Como lo puedo hacer con formula?? y con VBA para poder trabajar con los
datos??



Muchas Gracias,

Atte.
MN

Preguntas similare

Leer las respuestas

#1 Fernando Arroyo
17/02/2004 - 13:29 | Informe spam
Posiblemente no necesites ni fórmulas ni recurrir a VBA. Selecciona la columna, haz Datos->Texto en columnas, y sigue los pasos del asistente.
Un saludo.


Fernando Arroyo
MS MVP - Excel


"MN" escribió en el mensaje news:euIi7$
Hola,
tengo el siguiente problema:
Tengo deferentes celdas hacia abajo que contienen un texto asi:
[001 VIGENTE 00/00/0000 20/02/2004 154.865,0000
0,000] (todo este texto en una celda, sin parentesis)

y me gustaria dejarlo en diferentes celdas para poder trabajar con los
datos.

Como lo puedo hacer con formula?? y con VBA para poder trabajar con los
datos??



Muchas Gracias,

Atte.
MN


Respuesta Responder a este mensaje
#2 Jesús Román
17/02/2004 - 21:04 | Informe spam
Pega la siguiente funcion en tu modulo

Function ExtractElement(Txt, n, Separator) As String
' Returns the nth element of a text string, where the
' elements
' are separated by a specified separator character

Dim Txt1 As String, temperament As String
Dim ElementCount As Integer, i As Integer
Dim TempElement As String

Txt1 = Txt
' If space separator, remove excess spaces
If Separator = Chr(32) Then Txt1 = Application.Trim
(Txt1)

' Add a separator to the end of the string
If Right(Txt1, Len(Txt1)) <> Separator Then _
Txt1 = Txt1 & Separator

' Initialize
ElementCount = 0
TempElement = ""

' Extract each element
For i = 1 To Len(Txt1)
If Mid(Txt1, i, 1) = Separator Then
ElementCount = ElementCount + 1
If ElementCount = n Then
' Found it, so exit
ExtractElement = TempElement
Exit Function
Else
TempElement = ""
End If
Else
TempElement = TempElement & Mid(Txt1, i, 1)
End If
Next i
ExtractElement = ""
End Function

una vez pegado has de escribir en la celda donde quieras
que te aparezca el CUARTO DATO lo siguiente:
=EXTRACTELEMENT(D2;4;" ")
Esta funcion da por hecho que tienes los datos en la
casilla D2, que el dato que quieres sacar es el "cuarto"
y que la separacion entres los datos es de espacios en
blanco, si estuvieran separados por comillas u otro
caracter, tendrias que introducirlo entres las comillas.
Para otros datos cambias y pones los que te necesites.

Espero te sirva, cualquier duda, avisalo. saludos.

Hola,
tengo el siguiente problema:
Tengo deferentes celdas hacia abajo que


contienen un texto asi:
[001 VIGENTE 00/00/0000


20/02/2004 154.865,0000
0,000] (todo este texto en una celda, sin parentesis)

y me gustaria dejarlo en diferentes celdas para


poder trabajar con los
datos.

Como lo puedo hacer con formula?? y con VBA para


poder trabajar con los
datos??



Muchas Gracias,

Atte.
MN


.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida