MàJ Listing des affaires depuis fichier Source vers autres fichiers de W

Gecko20120

XLDnaute Nouveau
Bonjour,

Jusque là, j'arrive systématiquement à trouver les réponses à mes questions Excel en recherchant sur les différents forums traitant du sujet... mais là je cale et je sollicite votre aide directement.

Je travaille à un instant T une centaine d'affaire à différents stades d'avancement.
Un fichier source est mis à jour avec les données clefs : n° d'affaire / statut / Responsable / Client / Nom affaire / Montant HT / Nb d'heures prévues / ... . L'opération est réalisée par le Secrétariat.

Ce fichier vit : il subit des modifications 2 à 3 fois par mois
--> modification de lignes (= affaires) existantes
--> création de lignes

A partir de ce fichier, il est possible pour plusieurs équipes de réaliser un suivi de son activité propre (donc évolution fréquente / ajout de nombreuses colonnes / filtres divers et variés) :
* Le Bureau d'études programme et suit l'exécution des études dans un fichier
* Je fais le suivi Heures / Fournitures / Facturation dans un autre fichier
* ...

La difficulté est de pouvoir récupérer proprement les modifications et ajouts de quelques lignes du fichier source pour les insérer dans les fichiers de travail :
* A la main c'est fastidieux et les fichiers finissent par diverger
* De manière automatique (liaison entre les classeurs pour une zone de données), je ne sais pas comment gérer "l'alignement" entre les colonnes provenant de la source et les colonnes

(je précise : du fait d'une politique d'affectation des numéros d'affaires "fluctuante", les nouvelles affaires n'apparaissent pas en dernière ligne dans un fichier trié par ordre alphabétique.)

Je pensais à :
1/ Recharger en vrac les données pour les affaires qui existent déjà dans les fichiers cibles. (Si n° affaire fichier cible = N° affaire fichier source alors je recopie la valeur en colonne B, puis C,... - Je sais faire avec des EQUIV() et des INDEX() c'est laborieux mais ça marche.
2/ Macro pour comparer les listes d'affaires et créer les lignes pour les n° qui n'existent pas dans les fichiers cibles ? Je suis un peu rouillé du VBA mais c'est peut être faisable.

==> Mais je suppose que je dois louper une solution bcp plus élégante compte tenu de la simplicité de mon problème. Existe-t-il des fonctions de connexions/liens permettant de gérer ce besoin ?
Merci par avance de l'attention portée à ce message.
 

Gecko20120

XLDnaute Nouveau
Re : MàJ Listing des affaires depuis fichier Source vers autres fichiers de W

Bon bon bon... finalement j'ai trouvé le code sur un autre forum (merci donc à "JB" pour son message de 2007 sur Codes-Sources) pour tester l'absence d'une affaire et sa création en fin de liste.
J'ai légèrement adapté pour traiter mon autre besoin (mettre à jour les modifications d'affaires déjà existantes).

majModifAjout()
Set Ssource = Workbooks("source.xlsx").Sheets("source")
Set Scible = Workbooks("cible.xlsx").Sheets("cible")
For Each c In Range(Ssource.[A2], Ssource.[A65000].End(xlUp))
p = Application.Match(c, Scible.[A2:A1000], 0)
If Not IsError(p) Then
Scible.Cells(c, 2) = Ssource.Cells(c, 2)
Scible.Cells(2 + p, 3) = c.Offset(0, 2)
Else
Scible.[A65000].End(xlUp).Offset(1, 0) = c
Scible.[A65000].End(xlUp).Offset(0, 1) = c.Offset(0, 1)
Scible.[A65000].End(xlUp).Offset(0, 2) = c.Offset(0, 2)
End If
Next c
End Sub

Mais je suis tout de même preneur d'autres solutions si plus intéressantes ;)
 
Dernière édition:

joss56

XLDnaute Accro
Re : MàJ Listing des affaires depuis fichier Source vers autres fichiers de W

Bonjour à tous, Gecko,

Il y a sûrement d'autres solutions. Pour t'en proposer une, il faudrait un extrait du fichier source (sans données confidentielles) et un prototype de ce que tu souhaites.
A+
Jocelyn
 

Discussions similaires

Statistiques des forums

Discussions
314 633
Messages
2 111 416
Membres
111 126
dernier inscrit
vitam