Recherchev et copier dans une cellule les données

  • Initiateur de la discussion Initiateur de la discussion Florian95
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Florian95

XLDnaute Nouveau
Bonjour à tous,

Encore un petit projet !
je souhaite réaliser une macro pour qui va copier les données en feuilles FP et qui va la coller dans la feuille variable.

contraintes de l'opération :
- copier la valeur dans la feuille FP et la coller dans la ligne correspondante et ce en fonction de la date.
- copier la valeur sous format numérique sans formule

j'ai tenté avec VLOOKUP mais il n'arrive pas à tenir compte de la date.

Exemple :
- copier la valeur 144 (feuille FP cellule m4) correpondant au cumul des heures trav. (feuille FP cellule F4) et ce pour la date du 01/01/2014 (feuille FP cellule f2)

- coller cette valeur dans la feuille "variables" cellule B4 sous format numérique. Cette valeur est donc dans la ligne 4 (cumul heures trav) et la colonne B (Janvier 2014)


Merci beaucoup de votre aide !

florian

PJ
 

Pièces jointes

Re : Recherchev et copier dans une cellule les données

Bonjour Florian, bonjour le forum,

Peut-être comme ça :

Code:
Sub Macro2()
Dim F As Object 'déclare la variable F (onglet FP)
Dim V As Object 'déclare la variable V (onglet Variables)
Dim M As Byte 'déclare la variable M (onglet Mois)
Dim COL As Byte 'déclare la variable COL (COLonne)

Set F = Sheets("FP") 'définit l'onglet F
Set V = Sheets("Variables") 'définit l'onglet V
M = Month(F.Range("F2").Value) 'définit le mois M
COL = M + 1 'définit la colonne COL
V.Cells(4, COL).Value = F.Range("M4:N4").Value 'récupère la valeur du cumul des heures travaillées
V.Cells(4, COL).NumberFormat = F.Range("M4").NumberFormat 'récupère le format de nombre
V.Cells(5, COL).Value = F.Range("M5:N5").Value 'récupère la valeur du cumul des jour travaillés
V.Cells(5, COL).NumberFormat = F.Range("M5").NumberFormat 'récupère le format de nombre
End Sub
 
Re : Recherchev et copier dans une cellule les données

Bonsoir Florian95, Robert,

Juste quelques verres de Médoc ce soir, je ne devrais pas être transparent 😉

La question des formats me paraît très secondaire, formater comme on veut les lignes de destination !!!

Dans le code de la feuille "FP" :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next 'si n'importe quoi en F2...
With Feuil4 'CodeName de la feuille de destination
.Cells(4, Application.Match([F2], .[1:1], 0)).Resize(2) = [M4].Resize(2).Value
End With
End Sub
La macro s'exécute quand on modifie la feuille.

A+
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
540
Retour