Bonjour à tous,

je débute en VB et je bloque sur quelque chose qui doit être relativement simple pour les esprits éclairés que vous êtes...
j'ai eu beau chercher et chercher encore, je n'ai rien trouver approchant ma recherche sur google(il parait que la solution se trouve souvent sur google ) quoique certain reconnaitront peut etre le début du code ; voila :

pour le boulot, je dois créer une macro simplifiant ma tache, je m'explique :
j'ai plusieurs choix possible de date pour des prélèvements, que je répertorie en colonne i; et en fonction de la date de début et de la date de fin je voudrais copier//coller certaines cellules afin d'exporter sur une autre feuille les informations essentielles (en l'occurrence un num client, nom, montant etc...). Il me faut donc d'abord sélectionner tous ce qui concerne la date d'échéance (le 05, le 10, le 15, le 20 ou le 25 du mois) en colonne i, puis comparer les dates de début et de fin (colonnes E et F) par rapport à la date du jour (si le 5 du mois tombe un samedi ou un dimanche ça reporte au lundi...etc) :

En balbutiant j'arrive à :
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
 
Sub ech()
 
Dim Plage As Range
Dim dateDeb As Date
Dim dateFin As Date
 
Set Plage = Application.InputBox("Sélectionnez une plage", "notByMe", Type:=8)
 
Dim Rechercheplage As String
 
Rechercheplage = InputBox("Entrer la date d'echeance à rechercher", "...")
If Rechercheplage = vbNullString Then Exit Sub
Dim Cellule As Range
For Each Cellule In Plage
 
If InStr(1, Cellule.Value, Rechercheplage) > 0 Then
    Range(Cellule.Address).Select
 
    dateDeb = ActiveCell.Offset(0, -4)
    dateFin = ActiveCell.Offset(0, -3)
If (dateDeb <= Date and  dateFin>=  date) Then
    ActiveCell.Offset(0, -7).Copy Destination:=ActiveCell.Offset(0, 1)
 
    End If
End If
Next Cellule
 
End Sub
la ligne: ActiveCell.Offset(0, -7).Copy Destination:=ActiveCell.Offset(0, 1) est un exemple de copier//coller qui me permet de savoir si, en fonction des "dateDeb et DateFin", mon code fonctionne... et bien sur non!

Je pense avoir un probleme de format de date, mais ça doit (très certainement) être un problème parmis tant d'autres...

un peu d'aide svp
Merci