Ajout dates et heures avec une boucle for

Bonjour, je suis actuellement en train d'essayer d'ajouter des cellules suivant mes besoins. En effet je dispose de 11 ou 12 minutes entre deux dates or je veux avoir chaque minutes. Je réalise alors une opération (valeur de k) qui me donne par transposition la valeur de mon x (11 ou 12). Après ça je veux alors créer x cellules à remplir. Pour les dates c'est la date précédente plus une minute et pour les température c'est la température initial pour la valeur de mon i. Or j'ai un problème au niveau de l'instruction surligné en rouge que je n'arrive pas à résoudre. Avec le mode débogage je ne peux pas passer à l'étape supérieur. Quelqu'un aurait-il la solution ? Merci d'avance.

image image

Bonjour,

Quel est le message d'erreur? La sélection est elle bonne? j'ai l'impression qu'il faudrait que tu sélectionnes la ligne et pas juste une cellule de la colonne A.

Est-ce que tu peux nous envoyer une copie anonymisée de ton fichier?

Mon erreur est l'erreur 1004. Je ne désire pas sélectionner la ligne car ces colonnes sont sur un fichier bien plus gros de ce fait je désire uniquement ajouter des cellules sur deux colonnes.

Le code ne m'aide pas beaucoup, quel est le message affiché quand l'erreur arrive? Il donne généralement des bonnes pistes sur le problème.

J'ai uniquement cela.

image

C'est étrange, j'ai essayé de répliquer l'erreur de mon côté mais je n'y arrive pas, si c'était la sélection qui ne marchait pas, ça afficherait un message sur la ligne où tu sélectionnes, et ça ne dit pas non plus que c'est l'insertion qui a échouée.

J'ai l'impression que le seul élément qui peut encore poser problème c'est le "Selection" mais j'avoue que je suis étonné, si tu places un espion dessus, ça te renvoie quoi? Ou alors c'est peut-être un souci d'autorisation mais si c'est quelque chose comme ça je sèche... Il faudrait essayer de fouiller les options de VBA ou du classeur pour voir si les autorisations sont bonnes.

Question en plus: Est-ce que:

Range("A2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

Te génère une erreur ou non?

Sinon ça peut peut-être être une erreur de syntaxe mais je n'en vois pas sur le screen...

Après quelques modifications, je n'ai plus d'erreur mais rien ne se passe. J'ai placé les espions suivants et le programme passe de ma boucle for à la fin de mon programme.

image

Quelle boucle est passée? Quelles sont les valeurs des variables qui initialisent la boucle? Est-ce une bonne idée de mettre For i = i? (je n'ai jamais testé)

Est-ce que tu pourrais transmettre un fichier? (ça faciliterait vraiment la résolution, c'est dur d'aider avec uniquement des screens, je ne peux pas tout vérifier rapidement, on est obligé de le faire via une séance de questions réponses...).

3f.xlsm (15.92 Ko)
Il n'y a que le premier if qui passe pour moi et les valeurs qui initialisent sont i et x. Je vous transmet le fichier.

Voici le fichier avec un début de correction:

6f.xlsm (15.97 Ko)

Corrections apportées:

initialisation de la variable "derniereLigne", l'initialisation utilisait la colonne 17 qui est vide, dernierLigne était donc égale à 1 ce qui met la pagaille dans la boucle.

incrémentation du temps, tu avais écris

Cells(a, 2) = DateAdd("n", 1, Cells(i, 2))

Ce qui donnait toujours la même valeur pour l'heure, j'ai remplacé par:

Cells(a, 2) = DateAdd("n", 1, Cells(a - 1, 2))

Il semble encore y avoir des problèmes mais j'espère que cette partie marche déjà plus comme tu le souhaites.

Merci pour votre aide j'ai pu réussir à implémenter ce code notamment grâce à vous.

Rechercher des sujets similaires à "ajout dates heures boucle"