Question : Le fusionnement excellent des bilans

nous avons eu 8 personnes travailler à un 40mb partagé pour exceler le dossier, nous avons continué à rencontrer des problèmes avec eux ne pouvant pas sauver etc. ainsi nous avons fondamentalement sauvé 8 copies du bilan et les gens travaillent juste à leur propre un now.

However pour le reportage nous publient doivent maintenant fusionner ces bilans en arrière ensemble une fois par jour (si tout va bien gardant les utilisateurs sur leurs différents dossiers). Y a-t-il une manière simple de faire ceci ? J'ai essayé using l'outil de consolidation sans la chance. Et les moyens d'outil de fusion nous devons faire chaque

So de bilan un par un (et lui prend de bonnes 2 ou 3 minutes à charger une fois que nous le faisons) recherchant fondamentalement juste une manière plus facile d'accomplir this.
class= de

Réponse : Le fusionnement excellent des bilans

CaptainGiblets,

Le code ci-dessous est dans le dossier joint. Pour vous employer aura besoin :

1. Placer tous les dossiers à traiter dans une chemise de leurs propres. Placer le dossier ci-joint dans une chemise différente.

2. Mettre à jour cette ligne de code dans le macro pour adapter votre à installer l'IE. là où vous avez l'endroit les dossiers à traiter :

Placer le fld = le fso.GetFolder (« C:\Documents and Settings\Patrick et Thuc-Nghi \ mes documents \ dossiers de Patrick \ Excel \ CaptG \ ")

3. Appuyer sur le bouton pour courir le macro.

Espérer que des aides

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 secondaire ()
'Ce macro ouvre chaque dossier alternativement et extrait les données à partir de lui, l'enregistre dans la base de données,
'ferme le dossier, et passe au prochain dossier. Le macro enregistre également le nom de fichier de sorte que
'il traitera seulement un dossier s'il n'a pas été traité avant. Il emploie une « collection » pour
'les noms de dossier.

    Faible fso comme objet, fld comme objet, fil comme objet
    Faible coll en tant que nouvelle collection
    Faible FileListWs comme feuille de travail
    Faible SourceWs comme feuille de travail
    Faible SourceWb comme cahier de travail
    Faible DestWs comme feuille de travail
    Faible TotFiles en tant que longtemps
    Faible compteur en tant que longtemps
    Faible WasOpen comme booléen
    Obscurcir I en tant que longtemps
    Obscurcir le rowe en tant que longtemps
    Obscurcir la colonne en tant que longtemps
    Obscurcir le lastrow en tant que longtemps
    Obscurcir l'errorflag comme corde
    
    Application.ScreenUpdating = faux
    
    errorflag = ""

    'Déterminer les dossiers traités déjà
    Placer FileListWs = ThisWorkbook.Worksheets (la « liste de dossier »)
    Placer DestWs = ThisWorkbook.Worksheets (la « base de données »)
    Avec FileListWs
        TotFiles = Application.CountA (. [a : a])
        Si TotFiles > 0 puis
            Pour le compteur = 1 à TotFiles
                coll. Ajouter. Cellules (contre-, 1). Cellules (contre-, 1)
            Après
        Finir si
    Finir avec

    'regarder la chemise
    Placer le fso = le CreateObject (« Scripting.FileSystemObject »)
    'mettre le plein chemin à la chemise contenant des fichiers de données dans la prochaine ligne du code
    Placer le fld = le fso.GetFolder (« C:\Documents and Settings\Patrick et Thuc-Nghi \ mes documents \ dossiers de Patrick \ Excel \ CaptG \ ")
       
    Pour chaque fil dans le fld. Dossiers
        Sur le résumé d'erreur après
        coll. Ajouter le fil. Nom, fil. Nom
        Si errent <> 0 alors
            le 'dossier déjà traité, ne font rien
            Err.Clear
        Autrement
            'non traité encore ; le traiter
            Avec FileListWs
                Si TotFiles = 0 puis
                    . [A2] = fil. Nom
                Autrement
                    '. Cellules (. Rows.Count, 1).End (xlUp). Excentrage (1, 0) = fil. Nom
                    . Cellules (65536, 1).End (xlUp). Excentrage (1, 0) = fil. Nom
                Finir si
            Finir avec
            'voir s'il est déjà ouvert
            Placer SourceWb = cahiers de travail (fil. Nom)
            Si errent <> 0 alors
                'n'était pas ouvert
                WasOpen = faux
                Placer SourceWb = Workbooks.Open (fil. Chemin)
            Autrement
                WasOpen = rectifient
            Finir si
            
            Placer SourceWs = SourceWb.Sheets (1)
            
            Avec SourceWs
                . Gamme (. Cellules (2, « A »). Cellules (. Rows.Count, « A »). Extrémité (xlUp). Excentrage (0, 14)). Copier le _
                    DestWs.Cells (DestWs.Rows.Count, « A »). Extrémité (xlUp). Excentrage (1, 0)
            Extrémité avec
            
            errorflag = ""
            Sinon WasOpen puis SourceWb.Close faux
        Finir si
    Après

    Placer le coll = rien
    Placer le fil = rien
    Placer le fld = rien
    Placer le fso = rien
    
    Application.ScreenUpdating = rectifient
    MsgBox « fait »

Sous-marin d'extrémité
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us