Cómo unir archivos CSV dentro de ZIP automáticamente con PowerShell

Imagen
Cómo unir archivos CSV dentro de ZIP automáticamente con PowerShell Automatiza la consolidación de reportes CSV provenientes de múltiples archivos ZIP sin duplicar encabezados. Cuando trabajamos con reportes generados por diferentes sistemas es bastante común recibir información distribuida en varios archivos CSV, muchas veces comprimidos dentro de archivos ZIP. Por ejemplo, podemos recibir diariamente: Reportes de facturación. Archivos de pedidos. Información de embarques. Reportes de logística. Archivos generados por un ERP. Información descargada de algún sistema administrativo. Reportes enviados por diferentes sucursales. El problema aparece cuando tenemos que juntar todos esos archivos manualmente. Abrir cada ZIP, extraer el CSV, copiar la información, pegarla en otro archivo y repetir el proceso puede convertirse en una tarea repetitiva y propensa a errores. En este artículo vamos a crear un pequeño script de PowerShell que automatiza este pro...

Macro de Excel para ordenar datos y obtener datos únicos de una columna o fila

Hola en esta ocasión les quiero compartir un ejemplo de una macro de Excel para poder ordenar datos de columnas y obtener los datos únicos de una columna.

Por ejemplo yo tengo un Archivo de Excel del que quiero obtener las fechas para poder obtener los datos y los mostrare en una columna, la pantalla de ejemplo se ve así




  • El primer caso es para obtener los fechas únicas de una columna y colocarlas en una columna

'select dates filas
    'Declaramos variables
    Dim fin As Long, i As Long, unicos As Variant, unicos2 As Variant
    With Sheets("InputFile")
        fin = Application.CountA(.Range("A:A"))
        unicos = WorksheetFunction.Unique(.Range("A1:A" & fin))
        'Obtenemos los datos de la matriz y los pasamos a una columna
        i = 0
        For i = LBound(unicos) To UBound(unicos)
            .Cells(i + 1, 5) = unicos(i, 1)
            Next i
        .Range("E2:E100").Select
        Selection.Columns.Sort key1:=Columns("E"), Order1:=xlAscending
    End With
  • Ahora obtener las fechas únicas pero de una fila y colocarlos en una columna
'select dates columnas
    With Sheets("InputFile")
        fin = 0
        unicos2 = WorksheetFunction.Unique(.Range("H1:AE1"))
        'Obtenemos los datos de la matriz y los pasamos a una columna
        i = 0
        For i = LBound(unicos) To UBound(unicos)
            If unicos2(i) <> Empty Then
                .Cells(i + 1, 6) = unicos2(i)
          End If
            Next i
        End With
    Worksheets("InputFile").Range("F2:F100").Select

    ' Sort column C, after column N and after column F
    Selection.Columns.Sort key1:=Columns("F"), Order1:=xlAscending
Blog de Programacion para todos


Como se ve el archivo después de correr la macro
Macro_unicos_ordenar datos Blog de programacion

Les comparto un video para ver cómo funciona la macro


Esta macro la probé en la versión Excel 2019 y Microsoft 365, espero les sea de utilidad y puedan aplicarla en su trabajo o en la escuela

Comentarios

🚀 Mantener este blog funcionando requiere tiempo y café. ¡Puedes contribuir con uno aquí!

Entradas más populares de este blog

Guía Práctica: Ejemplo Completo de ASPX para Desarrolladores Web

👉 Cómo obtener el tipo de cambio en Excel con API de Banxico (paso a paso)

Macro en Word para automatizar documentos: genera diplomas en segundos (con código VBA)