XL 2010 Combler les lignes manquantes

guy72

XLDnaute Impliqué
Bonjour,
J'ai un fichier ou il y a les relevées météo toutes les minutes de la journée (1440 lignes)
Mais....dans ces relevés, j'ai des manques de minutes (donc des manques de lignes, (pas toujours au même endroit).

Par exemple avant la modification, j'avais :
A (Date) B(Time)
332 20161218 43000..............
333 20161218 43200...............
Donc, dans la colonne B, il me manque 43100

Pour rectifier le tir, je suis obligé (tous les jours) de copier la (les) lignes supérieures :
Ligne 332 colonne B=43000 et de (l') ou (les) insérées entre la ligne 332 et 333.

Ce qui donne :
A (Date) B(Time)
332 20161218 43000..............

333 20161218 43000 .............. (La ligne rouge est celle que j'ai insérée)
334 20161218 43200..............

Pour l'instant, je n'ai pas trouvé mieux.
Il y a ces problèmes en lignes : 337/339...387/389...432/434...447/449...469/472......etc

Ma question est :
Est-il possible de copier la ou les lignes supérieures, et de les insérer automatiquement entre les lignes à tous les endroits ou il y a un manque dans la colonne B

Dans la fichier joint :
1) En noire les lignes normales
2) En Rouges les lignes insérées
3) En jaune les emplacements des manques
4) Après, j'ai une macro qui me modifie le fichier et me l'envoie dans un autre fichier.

Si vous trouvé une solution ?
Merci de votre aide
Cordialement
 

Pièces jointes

  • 18_Décembre_2016.xlsm
    196.2 KB · Affichages: 59

guy72

XLDnaute Impliqué
Bonjour,
La macro ne s'arrête jamais.

Voici la procédure que je fais tous les jours pour en arrivé là :
1) J'ouvre un fichier "Xnet-copie.csv" avec Excel
2) J'ouvre un fichier vierge "Prépération.xlm"
3) Je cherche manuellement et je sélectionne (dans le fichier "CSV" les lignes du : 17/12/2016 à 23h00 au 18/12/2016 à 22h59

Ligne A (date) B (Time)
? 20161217 230000
>>>>>>>>>>>>>>>>>>>>
? 20161218 225900

4) Ensuite je copie tout ça dans le fichier 'Préparation.xlm", ce qui me donne (environ 1420 lignes).
Donc il me manque 1440-1420=environ 20 lignes, je dois arrivé à 1441 en complétant les manquants (avec le titre)
5) Ensuite, je fais ce que j'ai mis dans mon premier message

Mon souhait serait de faire tout ça automatiquement ?
 

Pièces jointes

  • XNet_Meteo - Copie.xlsx
    763.1 KB · Affichages: 61

guy72

XLDnaute Impliqué
20161217= La colonne de la date =2016-décembre-17

25900= 2h59mn00s
30000=3h00mn00s
30100=3h01mn00s
....etc (les secondes non aucunes importance)

Ce qu'il faut, c'est qu'il n'y ai pas de lignes vides, par exemple:
Entre le 17 décembre 2016 de 23h (230000) et le 18 décembre à 22h59 (225900)
Si tout est complet, les lignes s'arrêtent à 1441

ça fonctionne bien avec ton petit modèle
 

guy72

XLDnaute Impliqué
Fichier d'origine : Lignes de 1 à 26485 (pour l'instant) Xnet_Meteo_csv.xlsm
Fichier de préparation : Sélection et copie des lignes 24167 à 25588 du 17 décembre à 23h au 18 décembre à 22h59 : Préparation 18.xlsm
Fichier final avec les manquants bouchés (manuellement) : 18 décembre_2016.xlsm
 

Pièces jointes

  • XNet_Meteo_csv.xlsm
    3.2 MB · Affichages: 43
  • Préparation 18.xlsm
    185.9 KB · Affichages: 36
  • 18_Décembre_2016.xlsm
    194.5 KB · Affichages: 42

TooFatBoy

XLDnaute Barbatruc
Oups, j'ai oublié dans mon message précédent : Bonjour ;)

La macro ne s'arrête jamais.
Je n'ai pas regardé sa macro, mais si c'est comme celle que je me suis amusé à faire, elle tourne à l'infini sur le premier fichier que tu as fourni à cause des lignes que tu as insérées manuellement.

Edit : à moins que le problème vienne de la ligne dont l'heure est 06:51:59 ?
 
Dernière édition:

sousou

XLDnaute Barbatruc
Re bonjour à tous.
J'avais très mal compris et géré la notation des heures
Regardes cette solution qui ne traite que des lignes manquantes avec ou pas incrémentation des heures.
Pour le reste tu devrais t'en sortir
 

Pièces jointes

  • 18_Décembre_2016(1).xlsm
    210 KB · Affichages: 58

guy72

XLDnaute Impliqué
Bravo à tous les deux !!!
Ouff !!, ça va faire du bien de na pas chercher dans ces 1440 lignes
Les 2 codes fonctionnent
Effectivement, j'ai une ligne de plus, mais, des fois, il arrive que Xnet me mets 2 fois la même chose, ce n'est pas un manque, mais un de trop (ça c'est pas grave, c'est rare)

Pour les relevés d'aujourd'hui, demain, je n'ai plus qu'à essayer de trouver la sélection à faire dans le fichier "Xnet_Meto-csv.xlm qui va augmenter, je vais avoir 1440 lignes en plus (total 27000 environ).

Il faut que je trouve la ligne ou il y a :
En colonne A (Date) 20161218... En colonne B (Time) 230000
>>>>>>>>>>>>>>>>
En colonne A (Date) 20161219....En colonne B (Time) 225900

Et que je sélectionne l'ensemble pour mettre dans le fichier ou il y a vos macros et le tour est joué.

Cordialement
 

TooFatBoy

XLDnaute Barbatruc
Voici un exemple de ce que tu peux faire pour trouver la plage de cellules correspondant à la journée d'hier.

Si le début et la fin de la journée sont trouvés, alors les lignes de la plage correspondante sont sélectionnées, sinon c'est la cellule A1 qui est sélectionnée.
En suite, un message est affiché, donnant des renseignements sur la plage recherchée.


edit : fichier joint supprimé pour ne pas surcharger la base de données du forum
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa