XL 2013 besoin d'aide pour modification code VBA

an@s

XLDnaute Occasionnel
Bonjour à tous,
dans mon l'exemple ci-joint j'ai une macro qui me permet d'importer le nom des employés du classeur Paie-Mens vers Refac,
dans le ficher Refac en cliquant sur "copier données" le code copie les noms de tout les employés du mois en cours y compris les nouveaux, et moi ce que je fais par la suite je donne à chaque employé une imputation (colonne AD) et à la fin de chaque mois je copie tout les noms des employés que j'ai dans la colonne F dans la colonne AE pour faire la comparaison par la suite.
le problème c'est que si j'ai des nouveaux employés et en faisant l'importation des données, , la colonne F ou j'ai les noms se décale mais la colonne AD ou j'ai les imputations ne bouge pas.

donc ce que je souhaite avoir en faisant l'importation:
-si un nom existe dans la colonne F et n'existe pas dans la colonne AE donc il s'agit d'un nouveau employé donc ajouter une ligne avec la cellule de la colonne AD vide
-si un nom existe dans la colonne AE et n'existe pas dans la colonne F donc un employé ne bosse plus dans cette société donc supprimer la ligne qui correspond a cette employé

Merci d'avance
 

Pièces jointes

  • REFAC.zip
    76.9 KB · Affichages: 75

an@s

XLDnaute Occasionnel
Bonjour JOB,
Merci beaucoup pour la nouvelle modification mais cette fois aussi la macro n'a pas conservé les couleurs.
autre problème le 2ème code de recalcule ne marche plus avec cette version de votre code.
en plus de ça on ne peut pas rajouté de colonne dans ce tableau (Bilan Monétaire) car je dois copier ces données par la suite dans un logiciel vu que cette recap est exportée de ce logiciel qui n'acceptera aucune modification faite sur la recap.
 

ibni

XLDnaute Nouveau
Re,

Ah oui d'accord, on peut renseigner la colonne AE avant de modifier le tableau et la supprimer à la fin.

Comme je l'ai dit j'utilise maintenant la colonne E des matricules comme repérage :
Code:
Private Sub CommandButton1_Click()
Dim t, nlig&, d As Object, i&, rest(), j&
Application.ScreenUpdating = False
With Workbooks.Open(ThisWorkbook.Path & "\Paie-Mens.xlsx").Sheets("Feuil1")
  t = .Range("A5:AC" & .Range("F" & .Rows.Count).End(xlUp).Row + 2)
  nlig = UBound(t)
  .Parent.Close False
End With
'---restitution du 1er tableau---
[E:E].Copy [AE1] 'sauvegarde la colonne E (matricules) en colonne auxiliaire AE
Range("A3:AC" & Rows.Count).ClearContents 'RAZ
[A3].Resize(nlig, 29) = t
'---liste des noms du 1er tableau---
Set d = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(t)
  If t(i, 5) <> "" Then d(t(i, 5)) = i 'repère la ligne
Next i
'---création du 2ème tableau (rest)---
t = Range("AD3:AE" & Range("AE" & Rows.Count).End(xlUp).Row + 1)
ReDim rest(1 To nlig, 1 To 1)
For i = 1 To UBound(t)
  If t(i, 2) <> "" And d.Exists(t(i, 2)) Then rest(d(t(i, 2)), 1) = t(i, 1)
Next i
'---restitution du 2ème tableau (rest)---
[AE:AF].Delete 'à l'origine il y avait des formules en colonne AF
Range("AD3:AD" & Rows.Count).ClearContents 'RAZ
[AD3].Resize(nlig) = rest
End Sub
A+

Bonjour à tous,
Je me permets de solliciter votre aide après avoir parcouru en long et en large mon ami Google ainsi que ce forum en vain.
En fait, je suis absolument nul et j'aimerais savoir est ce que c'est possible d'appliquer ce code sur mon fichier joint pour importer toutes les données du fichier Matos vers Recap sans importer les lignes dont une cellule est en GRAS ( c'est à dire les lignes 8, 39,65,99,117,270,307,338,342,343,350,366,372,380,424,460,477,484,504,536,558,574,598,602)

Merci pour votre aide
 

Pièces jointes

  • RECAP.xlsx
    39.6 KB · Affichages: 54
  • MATOS.xlsx
    63 KB · Affichages: 71

an@s

XLDnaute Occasionnel
Bonjour Job, le forum
je reviens vers vous concernant ce projet qui m'a beaucoup servit dans mon boulot
dans le fichier ci-joint j'ai essayé de créer un projet similaire j'ai juste réduit le nombre de colonneS en adaptant le code à mes besoins mais le code vide toute la colonne Y des imputations toute en sachant que les données ne sont pas changées

pouvez vous voir s'il vous plait d'ou vient le problème ??

Merci pour votre assistance

Amicalement
An@s
 
Dernière édition:

Discussions similaires

Réponses
22
Affichages
793

Statistiques des forums

Discussions
312 345
Messages
2 087 473
Membres
103 553
dernier inscrit
jhnm