Je débute sur VBA, et je dois créer un fichier qui permet d'insérer des lignes dans un tableau en fonction d'une date/heure (format : "dd/mm/yyyy hh:mm") et de sa durée (pas de 10 min).
Chaque évènement a une durée définie, et je dois également gérer le passage d'une jour à l'autre (par exemple si le début est à 11/04/2023 23h40 et que je dois insérer 4 lignes, ma dernière ligne doit être au 12/04/2023 00:20). Je dois avoir à la fin l'ensemble de tous les évènements à la suite.
J'ai pour l'instant le code suivant mais une erreur d'exécution (1004 - "Erreur définie par l'application ou par l'objet") apparait dès que je lance le code..
Sub InsertLines()
Dim index As Integer
Dim total As Integer
Dim StartTime As Date
Dim Duration As Integer
Dim i As Integer
Dim ws As Worksheet
total = Cells(Rows.Count, 1).End(xlUp).Row
Set ws = ThisWorkbook.Sheets(1) 'Change to your sheet name
For index = 2 To total
StartTime = ws.Range(ws.Cells(index, 1)).Value 'Première date à traiter dans la cellule A2
Duration = ws.Range(ws.Cells(index, 2)).Value 'Première durée à traiter dans la cellule B2
For i = 1 To Duration
ws.Cells(i + 1, 3).Value = DateAdd("n", 10 * (i - 1), StartTime)
Next i
Next index
Je me tourne vers vous pour savoir si quelqu'un aurait une idée de comment faire !
merci d'avance
Alix
- Edité par AlixNjamkepo 28 septembre 2023 à 12:00:26
tu dois insérer des lignes ou remplir des lignes ?
(tu peux avoir un début de code en utilisant l'enregistrement de macro pendant que tu fais l'action désirée)
Insérer des lignes avec VBA
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.