Separar datos de una celda en columna distintas

Hola

Me podrías ayudar con esto, lo realize con función extraer, pero necesito que se realice con macro.

estos datos están en en columna A linea 1, 2 , 3 ,etc.. Necesito que extraiga los 5 ó 4 primeros números según sea el caso y los coloque en columna B y también los que corresponde a los datos después de segundo guion , en este caso 06 y 08 y los coloque en columna C y por ultimo me extraiga los últimos numero y los coloque en D.

Adjunto ejemplos :

15225 - MP-06-11.pdf debería quedar asi :15225 06 11

4572 - MP-08-12.pdf debería quedar asi: 4572 08 12

Gracias por tu ayuda

1 respuesta

Respuesta
1

Instrucciones para ejecutar macro
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. En el menú elige Insertar / Módulo
4. En el panel del lado derecho copia la macro
5. Para ejecutarla presiona F5

Sub Separa()
'Separa por guiones
'Por.Dam
    Columns("A:A").Select
    Selection.Copy
    Range("B1").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar:="-", _
        FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 2), Array(4, 1)), _
        TrailingMinusNumbers:=True
    Columns("E:E").Select
    Selection.TextToColumns Destination:=Range("E1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar:=".", _
        FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
    Columns("F:F").Delete Shift:=xlToLeft
    Columns("C:C").Delete Shift:=xlToLeft
    Range("B1").Select
End Sub

Saludos.Dam

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas