Bonjour,
J'importe des données depuis un ERP et j'ai notamment deux colonnes avec des dates qui sont au format "dd.mm.yyyy". Le format des cellules après que j'ai collé mes données reste en Standard.
Lorsque j'ajoute une colonne dans laquelle je veux calculer la différence en jours entre mes deux colonnes de date (en utilisant un simple =C1-B1), le calcul ne se fait pas car Excel ne reconnaît pas que ce sont des dates.
Quand je le faisais à la main, je faisais un rechercher et remplacer et je remplaçais les "." par des "/" et le problème était réglé. En utilisant une macro pour le faire, je vois en utilisant le pas-à-pas qu'après le remplacement de mes points dans mes colonnes de dates:
- Certaines cases passent automatiquement en format Date courte et non plus Standard, mais pas toutes.
- Ces cases dont le format change n'ont plus la bonne valeur de date, par exemple "03.01.2022" devient "01/03/2022" (je ne sais pas dire si la valeur a réellement changé ou si l'affichage m'induit en erreur).
Je ne suis pas spécialiste Excel et ne sais donc pas comment jouer avec les formats avant ou après mon rechercher et remplacer pour faire en sorte que le format ne bouge pas et donc que les dates ne soient pas modifiées en terme de valeur, et puissent être utilisées dans un calcul de différence en jours.
La fonction DateDiff (ou DiffDate) ne fonctionne pas avec les données brutes après import et je voudrais avoir les bonnes valeurs de dates avant d'utiliser la fonction comme il se doit.
Le code utilisé pour rechercher et remplacer:
Columns("E:F").EntireColumn.Select
Selection.Replace What:=".", replacement:="/", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Au moment de rechercher et remplacer, j'ai déjà créé avec ma macro un tableau qui contient toutes mes données, dont mes dates en colonnes E et F.
Merci d'avance, en espérant avoir été un minimum clair.