Cuestión : La combinación sobresale las hojas de balance

teníamos 8 personas el trabajar en un 40mb compartido para sobresalir el archivo, guardamos el funcionar en problemas con ellos que no podían ahorrar el etc así que ahorramos básicamente 8 copias de la hoja de balance y la gente está trabajando en apenas su propio un now.

However para la información nos publica ahora necesita combinar estas hojas de balance detrás junto una vez al día (esperanzadamente guardando a los usuarios en sus archivos individuales). ¿Hay manera fácil de hacer esto? He intentado usar la herramienta de la consolidación sin suerte. Y los medios de la herramienta de la fusión tenemos que hacer cada

So de la hoja de balance uno a la vez (y él toma los buenos 2-3 minutos a cargar una vez que lo hacemos) básicamente apenas que busca una manera más fácil de lograr this.
class= del

Respuesta : La combinación sobresale las hojas de balance

CaptainGiblets,

El código abajo está en el archivo atado. Para utilizarle necesitará:

1. Colocar todos los archivos que se procesarán en una carpeta sus los propios. Colocar el archivo atado en una diversa carpeta.

2. Poner al día esta línea de código en la macro para adaptarse su para fijar el IE. donde usted tiene lugar los archivos que se procesarán:

Fijar el fld = fso.GetFolder (“C:\Documents and Settings\Patrick y Thuc-Nghi \ mis los documentos \ archivos \ CaptG de Patrick \ de Excel \ ")

3. Presionar el botón para funcionar con la macro.

Esperar que las ayudas

Patrick
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
ProcessFromFolder secundario ()
'Esta macro abre cada archivo alternadamente y extrae los datos de ella, la registra en la base de datos,
'cierra el archivo, y se mueve encendido al archivo siguiente. La macro también registra el nombre de fichero de modo que
'procesará solamente un archivo si no se ha procesado antes. Utiliza una “colección” para
'los nombres del archivo.

    Fso dévil como objeto, fld como objeto, fil como objeto
    Coll dévil como nueva colección
    FileListWs dévil como hoja de trabajo
    SourceWs dévil como hoja de trabajo
    SourceWb dévil como libro de trabajo
    DestWs dévil como hoja de trabajo
    TotFiles dévil como de largo
    Contador dévil como de largo
    WasOpen dévil como boleano
    Amortiguar i como de largo
    Amortiguar el rowe como de largo
    Amortiguar la columna como de largo
    Amortiguar el lastrow como de largo
    Amortiguar el errorflag como secuencia
    
    Application.ScreenUpdating = falso
    
    errorflag = ""

    'Determinar los archivos procesados ya
    Fijar FileListWs = ThisWorkbook.Worksheets (la “lista del archivo”)
    Fijar DestWs = ThisWorkbook.Worksheets (la “base de datos”)
    Con FileListWs
        TotFiles = Application.CountA (. [a: a])
        Si TotFiles > 0 entonces
            Para el contador = 1 a TotFiles
                coll. Agregar. Células (contrarias, 1). Células (contrarias, 1)
            Después
        Terminar si
    Terminar con

    'mirar la carpeta
    Fijar el fso = CreateObject (“Scripting.FileSystemObject”)
    'poner la trayectoria llena a la carpeta que contiene ficheros de datos en la línea de código siguiente
    Fijar el fld = fso.GetFolder (“C:\Documents and Settings\Patrick y Thuc-Nghi \ mis los documentos \ archivos \ CaptG de Patrick \ de Excel \ ")
       
    Para cada fil en fld. Archivos
        En curriculum vitae del error después
        coll. Agregar el fil. Nombre, fil. Nombre
        Si entonces <> yerra 0
            el 'archivo procesado ya, no hace nada
            Err.Clear
        
            'no procesado todavía; procesarlo
            Con FileListWs
                Si TotFiles = 0 entonces
                    . [A2] = fil. Nombre
                
                    '. Células (. Rows.Count, 1).End (xlUp). Compensación (1, 0) = fil. Nombre
                    . Células (65536, 1).End (xlUp). Compensación (1, 0) = fil. Nombre
                Terminar si
            Terminar con
            'ver si está ya abierto
            Fijar SourceWb = los libros de trabajo (fil. Nombre)
            Si entonces <> yerra 0
                'no estaba abierto
                WasOpen = falso
                Fijar SourceWb = Workbooks.Open (fil. Trayectoria)
            
                WasOpen = verdad
            Terminar si
            
            Fijar SourceWs = SourceWb.Sheets (1)
            
            Con SourceWs
                . Gama (. Células (2, “A”). Células (. Rows.Count, “A”). Extremo (xlUp). Compensación (0, 14)). Copiar el _
                    DestWs.Cells (DestWs.Rows.Count, “A”). Extremo (xlUp). Compensación (1, 0)
            Extremo con
            
            errorflag = ""
            Si no WasOpen entonces SourceWb.Close falso
        Terminar si
    Después

    Fijar el coll = nada
    Fijar el fil = nada
    Fijar el fld = nada
    Fijar el fso = nada
    
    Application.ScreenUpdating = verdad
    MsgBox “hecho”

Submarino del extremo
Otras soluciones  
 
programming4us programming4us