bonjour a tous , JE suis debutante et je bloque sur ce point
comment ajouter une boucle et condition a cette macro
la feuille 1
la ligne A1:A9 date A1 et A9 c'est cellules nommés ET le reste n'est pas nommée exemple 2010.2011.2012.2013..................2018 dans ce cas A1 celulle nomé "date debut"
A9 celullule nommé "datedefin" =2018
Aune colonne A5:A : reference
la feuille 2
colonne C refence
colonne D date
colonne H prix
cette macro elle compare colonne C de la feuille 2 avec le A de la feuille 1 et elle copie le prix de H DE LA FEUILLE 2 dans la colonne C de la feuille 1
ELLE COMPARE PAS LES DATES
SACHANT QUE LA CONDITION IL FAUT QUE LES PRIX COPIER LEURS DATE SOIT ENTRE DATEDEBUT ET DATEFIN
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Sub compar() Dim Lig As Long Dim NbrLig As Long, NumLig As Long Dim colfeuil2 As String Dim i As Integer Dim D1 As Date Dim DerCol As Integer Dim j As Integer D1 = Range("datedebut").Value D2 = Range("datefin").Value NbrLig = Worksheets("Feuil1").Range("A" & 65536).End(xlUp).Row NumLig = Worksheets("Feuil2").Range("C" & 65536).End(xlUp).Row For Lig = 1 To NbrLig colfeuil2 = Worksheets("Feuil1").Range("A" & Lig) 'ligne = Worksheets("Feuil1").Range("A1:Z1") If colfeuil2 = "" Then GoTo lab i = 1 For i = 1 To NumLig If Worksheets("Feuil2").Range("C" & i).Value = colfeuil2 Then Worksheets("Feuil2").Range("H" & i).Copy Worksheets("Feuil1").Range("C" & Lig).Select ActiveSheet.Paste Exit For End If Next i lab: Next Lig End Sub
merci de votre aide
Partager