Je suis en train de creer un planning pour planifier des congés/RTT ainsi que des tâches à réaliser pour des techniciens.
Tout fonctionne bien mais j'ai un petit soucis lorsque je prévois des dates de congés, j'ai l'impression qu'il y a une confusion entre le 01/01/2014 et le 01/11/2014.
En effet, après un double clic dans une ligne "Congés/RTT", une combobox m'invite à renseigner les dates de début et de fin de congés, lorsque je mets la date de début au 01/01/2014 et la date de fin aléatoirement, Excel ne prends pas bien en compte les dates et se trompe entre le 01/01/2014 et le 01/11/2014.
Etant débutant sur VBA, il n'est bien entendu pas à exclure une erreur de ma part
J'aurais donc aimé savoir si c 'était moi ou Excel qui buggait
Il faut être très précis avec les paramètres de la fonction FIND. Car il n'y a pas de valeur par défaut pour les paramètres de cette fonction. Donc si tu ne les spécifies pas, ça sera n'importe quoi.
Essaie comme ceci:
Code:
Set Trouve = Sheets("Planning_PO").Range("F3:QQ3").Find(what:=DateDebut, LookIn:=xlFormulas, LookAt:=xlWhole, SearchFormat:=False, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
C'est probablement les paramètres LookIn:= LookAt:= et SearchFormat qui te causent problèmes.
Etant débutant en VBA je ne comprends pas cette partie du code :
.SpecialCells(xlCellTypeConstants)
C'est pour indiquer à Excel de ne chercher que dans les cellules non vides ?
C'est exact, mais il faut ajouter quelques précisions:
Le paramètre xlCellTypeConstants ne cherche que des valeurs alphanumériques. Si les cellules contiennent des formules, alors il faut indiquer xlCellTypeFormulas.
Tu peux aussi rechercher des cellules vides, ou d'autre nature, que l'aide d'excel te permettra de détailler.
Attention toutefois, si aucune cellule correspondante au critère n'est trouvée, un message d'erreur s'affichera.
Espérant avoir répondu.
Cordialement.
PS: pas de problème ni de rancune pour ta confusion.