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
| Function classement(sel_ou_buy As String)
Application.ScreenUpdating = False
' Ici on va rechercher la 1ere bande libre dans le sheets "All"(grise ou blanche on s'en fou)
Dim ligne As Long, veille As Date, i As Long
For i = 13 To Sheets("All").Range("A" & Rows.Count).Row Step 4
If Sheets("All").Range("A" & i) = "" Then
ligne = i
Exit For
End If
Next
'Maintenant on va trier le sheets("Daily Equity")
'tout dabors on determine la veille
veille = Format(CDate(Date - 1), "mm/dd/yyyy") ' et voila
MsgBox veille
'maintenant on va chercher les lignes avec cette date et qui on "Sell" ou "Buy" en colonne "G"
With Sheets("Daily Equity")
'trie des ligne avec "Sell"
For Each cel In .Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row)
'on va prendre les 10 1ers caractere dans la cel dans la colonne A
datecel = Left(cel.Text, 10)
'si la date =veille et la cellule g de la meme ligne = la variable "sel_ou_buy" qui a été instruite dans la sub classementsellbuy
If datecel = veille And .Range("G" & cel.Row) = sel_ou_buy Then
'si c'est bon on copie la ligne complete
cel.EntireRow.Copy
Sheets("All").Select
'on colle dans le sheets("All") dans la 1ere ligne de la premiere bande libre que l'on a trouver en debut de fonction
Rows(ligne & ":" & ligne).Select
ActiveSheet.Paste
'on ajoute un a la variable ligne pour la suite
ligne = ligne + 1
End If
Next
End With
End Function |
Partager