Besoin d'aide

alicebaudry

XLDnaute Nouveau
Bonjour à tous,

Je fais appel à vous pour la deuxième fois car ce site me permet de faire des progrès sous Excel, mais je dois avouée que je rame pour les macros

J'ai besoin de votre aide pour réaliser un macro qui réalise les choses suivante
J'ai trois feuilles : Diplomes, Contrat, Fusion
Les deux premieres proviennent du client et dans la troisième, j'aimerais que ça recopie la feuille diplomes et que ça copie de la feuille contrat la colonne E en C et D de Fusion. Que ça copie les colonnes I,J,K,L et M de la feuille contrat en P,Q,R,S et T dans la feuille Fusion
Ensuite je voudrai que en colonne F de la feuille fusion, il me calcul l'age de la personne
En colonne J, j'aimerai que le libéllé devienne "niveau éducation"
Enfin, je voudrai que la macro tri le tableau par nom / prénom/ Date de début et que si on a deux date de début identique pour le même nom, il supprime une des lignes et que pour tous les cellule vide la macro remplace vide par la valeur du dessus

J'espere qu'une personne pourra m'aider

Alice
 

Pièces jointes

  • Diplomes.zip
    7.8 KB · Affichages: 24

Robert

XLDnaute Barbatruc
Repose en paix
Re : Besoin d'aide

Bonsoir Alice, bonsoir le forum,

Je te propose la macro suivante :

Code:
Sub Macro1()
Dim d As Worksheet 'déclare la variable d (Diplomes)
Dim c As Worksheet 'déclare la variable c (Contrat)
Dim f As Worksheet 'déclare la variable f (Fusion)
Dim cel As Range 'déclare la variable cel (CELlule)
Dim np() As String 'déclare le tableau de variables np (Nom Prénom)
 
Set d = Sheets("Diplomes") 'définit la variable d
Set c = Sheets("Contrat") 'définit la variable c
Set f = Sheets("Fusion") 'définit la variable f
d.Range("A1").CurrentRegion.Copy f.Range("A1") 'copy les données de l'onglet "Diplomes"
 
'boucles sur toutes les cellules éditée de la colonne E de l'onglet "Contrat"
For Each cel In c.Range("E2:E" & c.Range("E65536").End(xlUp).Row)
    np() = Split(cel.Value, , 2, vbTextCompare) 'définit le tableau de variable np
    f.Range("C65536").End(xlUp).Offset(1, 0).Value = np(0) 'copie les noms dans l'onglet "Fusion"
    f.Range("D65536").End(xlUp).Offset(1, 0).Value = np(1) 'copie les prénoms dans l'onglet "Fusion"
Next cel 'prochaine cellule éditée de la boucle
 
'copie les colonnes I à M de l'onglet "Contrat"
c.Range("I2:M" & c.Range("I65536").End(xlUp).Row).Copy f.Range("P65536").End(xlUp).Offset(1, 0)
End Sub
 

alicebaudry

XLDnaute Nouveau
Re : Besoin d'aide

Bonjour Robert

Merci beaucoup pour ton aide, il me reste maintenant à trouver comment trier les données par nom, prénom et date début et comment remplir les cellulles vide par les données de la ligne supérieur

Si il y a du monde pour aider je veux bien

Encore Merci Robert
 

alicebaudry

XLDnaute Nouveau
Re : Besoin d'aide

Bonjour Robert

J'ai continuée à créer des macros pour réaliser le fichier qu'il me faut au final

Dans ta macro, il me manque une seul chose, la colonne F "date d'entrée n'est pas copier dans le fichier Fusion

Il faudrait que je retrouve cette donnée en AH

Peux tu m'aider sur ce sujet

Merci d'avance

Alice
 

Pièces jointes

  • Alice.zip
    41.6 KB · Affichages: 19
  • Alice.zip
    41.6 KB · Affichages: 17
  • Alice.zip
    41.6 KB · Affichages: 28

Robert

XLDnaute Barbatruc
Repose en paix
Re : Besoin d'aide

Bonsoir Alice, bonsoir le forum,

Si,si, la colonne F était bien copiée dans Fusion mais j'avais pris l'initiative de renommer le libellé de "Date d'entrée" en "Âge".

Dans la version 2 j'ai remis en l'état... Et j'ai répercuté l'âge dans la colonne AH.
 

Pièces jointes

  • Alice_v02.xls
    62 KB · Affichages: 78

alicebaudry

XLDnaute Nouveau
Re : Besoin d'aide

Bonjour Robert

En faite dans le fichier fusion, en colonne F, il me faut la date d'entrée du fichier diplomes et en colonne AI du fichier fusion, j'aimerai avoir l'age de la personne

Excuse moi, je me suis un peux enmelée ldans mes explications

Alice

Merci
 

alicebaudry

XLDnaute Nouveau
Re : Besoin d'aide

Bonjour Robert

Merci pour cette macro, elle fonctionne mais j'ai deux choses à te faire modifier et je t'avoue que la c'est trop compliquée pour moi

Sur l'exemple qu'il y a dans le fichier ALICE_4.xls

Quand tu copie le fichier dans fusion, sur la deuxième ligne il a decalé d'une ligne la recopie (exemple dans le fichier)

Enfin, je t'ai demandée de copier si la cellule est vide prend la valeur de la cellule supérieure mais il faut que le nom et prenom sois identique sinon on laisse vide

Comment pourrais-je te remercier ?

Alice
 

Pièces jointes

  • Alice_v04.zip
    43.1 KB · Affichages: 18
  • Alice_v04.zip
    43.1 KB · Affichages: 22
  • Alice_v04.zip
    43.1 KB · Affichages: 22

Discussions similaires

Statistiques des forums

Discussions
312 502
Messages
2 089 049
Membres
104 012
dernier inscrit
baffyt2