Borner une formule
Bonjour à tous,
J'essaie de mettre au point une formule qui me permettra de traces des graphiques à partir d'un enregistreur sans papier (il enregistre une vingtaine de variables différentes). Le nombre de données étant assez conséquent (pour le fichier sur lequel je travaille la 370000 lignes mais cela peu être beaucoup plus) j'ai écris une macro qui après avoir retraiter certaine des données pour me donner accès aux données exploitable n'en sélectionne qu'une toute les 32 secondes.
Et voila mon problème, j'ai choisis de ne garder qu'une valeur toute les 32 secondes car Excel ne peut traiter que des graphique à 32000 lignes. Le souci est: ma formule fonctionne jusqu'au moment ou il n'y a plus de valeur dans la colonne dans laquelle les données sont prise, la il m'affiche ## puisque rien s'écrit comme ca dans le format date et heure, et après quand ma formule dépasse le nombre maximum de cellule Excel une erreur de#ref s'affiche.
Connaîtriez vous une façon de stopper ma formule lorsqu'elle rencontre une case vide? Juste le SI ne fonctionne pas puisque la case pour Excel n'est pas vide il y a une formule dedans qui donne vide.
J'ai trouvé certaine chose sur internet malheureusement c'est ma première sur VBA et j'ai pas réussis à les adapter à mon cas.
Je vous remercie d'avance
Bonjour,
Mon fichier est trop gros pour le poster ici. Je vais donc coller mon code ici et mettre mon fichier sans la macro il suffira de l'ouvrir et copier coller, si vous avez une autre methode je suis preneur!!!
Sub copier()
'Activation feuil2
Sheets("feuil2").Activate
'Copier la colonne A
Range("A2:A380000").Copy
'Activation feuil1
Sheets("feuil1").Activate
'Coller en feuil1
Range("B1").PasteSpecial
'Activation feuil 2
Sheets("feuil2").Activate
'Inserrer une nouvelle colonne
Columns("C").Insert
'Copier les cellules
Range("C2").Select
Columns("C").FormulaR1C1 = "=RC[-2]+RC[-1]"
'Mise en forme de la colonne
Columns("C").NumberFormat = "d/m/yy h:mm;@"
'Ecrire le nom de la colonne
Range("C1").Value = "Date + Heure"
'Mise en forme de la cellule titre
Range("C1").NumberFormat = "General"
'Inserrer une nouvelle colonne
Columns("D").Insert
'Faire la soustraction pour avoir le temps d'essai
Columns("D").FormulaR1C1 = "=RC[-1]-R2C3"
'Mise en forme de la colonne
Columns("D").NumberFormat = "[h]:mm:ss;@"
'Ecrire le nom de la colonne
Range("D1").Value = "Temps d'essai"
'Mise en forme de la cellule titre
Range("D1").NumberFormat = "General"
'Inserer une variable qui permetra de limite la colonne de une valeur sur 30
Range("T1").Value = "Nombre de valeur de la colonne D"
Range("T2").Select
ActiveCell.FormulaR1C1 = "=COUNT(C5)"
'Inserrer une nouvelle colonne
Columns("E").Insert
'Sélectionner une valeur sur 30
Columns("E").FormulaR1C1 = "=IF(OFFSET(R2C4,(ROW()-2)*30,0,1,1)="""","""",OFFSET(R2C4,(ROW()-2)*30,0,1,1))"
'Ecrire le nom de la colonne
Range("E1").Value = "Echantillonage 30'"
'Mise en forme de la cellule titre
Range("E1").NumberFormat = "General"
End Sub