¿Que formula de Excel puedo utilizar ?

Que formula puedo utilizar para extraer texto de una archivo y colocarlo en otra hoja de excel. Pongo un ejemplo

Folio                        Fecha                          Concepto                       Nombre                                               Costo     

1255                05/01/18                       Geriatra                       Tayle de los Ángeles                              $ 2150

1256                05/01/18                       Pediátrica                   Tayle de los Ángeles                               $ 157

1257                05/01/18                        General                       Tayle de los Ángeles                            $ 15874

1258                05/01/18                       Urología                          Carmen Beltrán                                    $ 200

1259                05/01/18                       Urología                          Carmen Beltrán                                    $500 

De esos datos QUIERO EXTRAER TODOS LOS DE TAYLE DE LOS ANGELES PERO CON TODA LA FILA. En otra hoja quiero todos los de carmen beltran pero igual con toda la fila.

Espero puedan apoyarme de antemano

3 Respuestas

Respuesta
2

Revisa el siguiente artículo

https://www.gerencie.com/dividir-datos-de-una-hoja-de-excel-en-grupos.html

Aún tienes pendiente valorar esta respuesta:

Como hacer una macro en excel 2003 que me haga una copia exacta del archivo que quiero copiar ?

Sal u dos

Buen día me puede ayudar con eso? Sale un recuadro que dice error en sintaxis y se esperaba fin de la instrucción. De antemano gracias!

Te anexo la macro actualizada

Sub Separar_Datos()
'----
'   Por Dante Amor
'----
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Application.StatusBar = False
    Set l1 = ThisWorkbook
    Set h1 = Sheets("CEDULA")    'hoja con datos
    Set h2 = Sheets("temp")     'hoja temporal
    col = "H"                   'columna clave
    ucol = "AC"                  'ultima columna de datos
    n = Columns(col).Column
    h2.Cells.Clear
    If h1.AutoFilterMode Then h1.AutoFilterMode = False
    h1.Columns(col).Copy h2.[A1]
    u2 = h2.Range("A" & Rows.Count).End(xlUp).Row
    h2.Range("A1:A" & u2).RemoveDuplicates Columns:=1, Header:=xlYes
    '
    ruta = l1.Path & "\"
    u2 = h2.Range("A" & Rows.Count).End(xlUp).Row
    For i = 2 To u2
        Application.StatusBar = "Generando archivo " & i - 1 & " de " & u2 - 1
        clave = h2.Cells(i, "A")
        If h1.AutoFilterMode Then h1.AutoFilterMode = False
        u1 = h1.Range("A" & Rows.Count).End(xlUp).Row
        h1.Range("A1:" & ucol & u1).AutoFilter Field:=n, Criteria1:=clave
        Set l2 = Workbooks.Add
        Set h21 = l2.Sheets(1)
        h1.Range("A1:" & ucol & u1).Copy h21.[A1]
        l2.SaveAs ruta & clave
        l2.Close
    Next
    If h1.AutoFilterMode Then h1.AutoFilterMode = False
    Application.StatusBar = False
    MsgBox "Archivos creados"
End Sub

sal u dos

No me la reconoce. Gracias por la ayuda

Algún caracter rato se estarás copiando al momento de pegar el código en tu hoja.

El código lo debes poner en un módulo.

Envíame tu archivo y le adapto la macro

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “dafne bego

Respuesta
1

Primero debes tener tu hoja de calculo maestra (en la parte de abajo agregas las hojas), luego vas agregando las hojas con diferentes nombres (en este caso: los que tienes en la columna nombre).

Ahora, por ejemplo: para agregar la celda (nada mas) de una hoja a otra pones: Carmen beltran (hoja) + la posición de la celda (B2, por ejemplo), quedaría asi: "Carmen beltran!B2", es importante el simbolo de admiración ! Para el reconocimiento de celdas, y aquí solo agregas la información de esa celda, si quieres pasar todo, pones todas las celdas donde hay información y listo.

Respuesta
1

Lo que pides implica elimina nombres duplicados luego con los nombres únicos contar cuantos coinciden después ubicarlos, seccionar esos registros, copiarlos a una nueva hoja y en caso de que esta no exista crearla, con fórmulas no es posible hacer todo eso en forma automática, para ello se requiere o hacerlo manual con la perdida de tiempo que implica o bien a través de una macro y este es el resultado de mi macro que anexo abajo.

Option Explicit
Sub dividirycopiar()
Dim datos As Range, tabla As Range, registros As Range
Dim f As Integer, c As Integer, tf As Integer, i As Integer
Dim cuenta As Integer, fila As Integer
Dim nombre As String
With Range("a1").CurrentRegion
    f = .Rows.Count - 1
    c = .Columns.Count
End With
Set datos = Range("a2").Resize(f, c)
With datos
    Set tabla = .Columns(c + 4).Resize(f, 1)
    With tabla
        .Value = datos.Columns(4).Value
        .RemoveDuplicates Columns:=Array(1)
        Set tabla = tabla.CurrentRegion
        tf = tabla.Rows.Count
        For i = 1 To tf
            nombre = .Cells(i, 1)
            cuenta = WorksheetFunction.CountIf(datos.Columns(4), nombre)
            fila = WorksheetFunction.Match(nombre, datos.Columns(4), 0)
            Set registros = datos.Rows(fila).Resize(cuenta, c)
            On Error Resume Next
denuevo:
            Worksheets(nombre).Range("a2").Resize(cuenta, c).Value = registros.Value
            Worksheets(nombre).Range("a1").Resize(1, 5).Value = datos.Rows(0).Value
            Worksheets(nombre).Range("a1").CurrentRegion.EntireColumn.AutoFit
            If Err.Number = 9 Then
                Sheets.Add , after:=Worksheets(Worksheets.Count)
                ActiveSheet.Name = nombre
                On Error GoTo 0
                GoTo denuevo
            End If
        Next i
        .Clear
        .EntireColumn.AutoFit
    End With
 End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas