Bonsoir à tous,
En colonne A j'ai la date (format jj/mm/aaaa hh:mm:ss).
En colonne B j'ai l'évènement qui correspond à la date: entrée, début, fin,
sortie, (et la séance se répète autant de fois que nécessaire).
Je voudrais regrouper en colonne C toutes les valeurs de durée comprise
entre la date de "entrée" et celle de "début", autant de fois que la
séquence s'est produite.
Voici mon code (il ne marche pas):
Sub Trieuse()
Dim avant
Dim apres
Dim Calcul
Dim cell As Range
For Each cell In Range("B:B")
If cell.Value = "Entree" Then
avant = ActiveCell.Offset(0, -1).Value
apres = ActiveCell.Offset(-1, -1).Value
Calcul = apres-avant
Range("C65536").End(xlUp).Offset(1, 0).value=calcul
End If
Next cell
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacky
Bonjour,
Merci +++ de m'aider à ouvrir les yeux
J'ai pas tout compris, mais remplace déjà ceci '-------- For Each cell In Range("B1:b" & Range("b65536").End(3).Row) '----- avant = cell.Offset(0, -1).Value apres = cell.Offset(1, -1).Value '-----
Salutations JJ
"ManBas" a écrit dans le message de news:e3$
Bonsoir à tous, En colonne A j'ai la date (format jj/mm/aaaa hh:mm:ss). En colonne B j'ai l'évènement qui correspond à la date: entrée, début, fin,
sortie, (et la séance se répète autant de fois que nécessaire). Je voudrais regrouper en colonne C toutes les valeurs de durée comprise entre la date de "entrée" et celle de "début", autant de fois que la séquence s'est produite. Voici mon code (il ne marche pas): Sub Trieuse() Dim avant Dim apres Dim Calcul Dim cell As Range For Each cell In Range("B:B") If cell.Value = "Entree" Then avant = ActiveCell.Offset(0, -1).Value apres = ActiveCell.Offset(-1, -1).Value Calcul = apres-avant Range("C65536").End(xlUp).Offset(1, 0).valueÊlcul End If Next cell End Sub
Merci +++ de m'aider à ouvrir les yeux
Bonjour,
Merci +++ de m'aider à ouvrir les yeux
J'ai pas tout compris, mais
remplace déjà ceci
'--------
For Each cell In Range("B1:b" & Range("b65536").End(3).Row)
'-----
avant = cell.Offset(0, -1).Value
apres = cell.Offset(1, -1).Value
'-----
Salutations
JJ
"ManBas" <nonospamMaBas@wanadoo.fr> a écrit dans le message de
news:e3$lTyo3GHA.1252@TK2MSFTNGP04.phx.gbl...
Bonsoir à tous,
En colonne A j'ai la date (format jj/mm/aaaa hh:mm:ss).
En colonne B j'ai l'évènement qui correspond à la date: entrée, début,
fin,
sortie, (et la séance se répète autant de fois que nécessaire).
Je voudrais regrouper en colonne C toutes les valeurs de durée comprise
entre la date de "entrée" et celle de "début", autant de fois que la
séquence s'est produite.
Voici mon code (il ne marche pas):
Sub Trieuse()
Dim avant
Dim apres
Dim Calcul
Dim cell As Range
For Each cell In Range("B:B")
If cell.Value = "Entree" Then
avant = ActiveCell.Offset(0, -1).Value
apres = ActiveCell.Offset(-1, -1).Value
Calcul = apres-avant
Range("C65536").End(xlUp).Offset(1, 0).valueÊlcul
End If
Next cell
End Sub
J'ai pas tout compris, mais remplace déjà ceci '-------- For Each cell In Range("B1:b" & Range("b65536").End(3).Row) '----- avant = cell.Offset(0, -1).Value apres = cell.Offset(1, -1).Value '-----
Salutations JJ
"ManBas" a écrit dans le message de news:e3$
Bonsoir à tous, En colonne A j'ai la date (format jj/mm/aaaa hh:mm:ss). En colonne B j'ai l'évènement qui correspond à la date: entrée, début, fin,
sortie, (et la séance se répète autant de fois que nécessaire). Je voudrais regrouper en colonne C toutes les valeurs de durée comprise entre la date de "entrée" et celle de "début", autant de fois que la séquence s'est produite. Voici mon code (il ne marche pas): Sub Trieuse() Dim avant Dim apres Dim Calcul Dim cell As Range For Each cell In Range("B:B") If cell.Value = "Entree" Then avant = ActiveCell.Offset(0, -1).Value apres = ActiveCell.Offset(-1, -1).Value Calcul = apres-avant Range("C65536").End(xlUp).Offset(1, 0).valueÊlcul End If Next cell End Sub
Merci +++ de m'aider à ouvrir les yeux
ManBas
Merci Jacky. La macro fonctionne avec ça. A bientôt.
"Jacky" a écrit dans le message de news: %
Bonjour,
Merci +++ de m'aider à ouvrir les yeux
J'ai pas tout compris, mais remplace déjà ceci '-------- For Each cell In Range("B1:b" & Range("b65536").End(3).Row) '----- avant = cell.Offset(0, -1).Value apres = cell.Offset(1, -1).Value '-----
Salutations JJ
"ManBas" a écrit dans le message de news:e3$
Bonsoir à tous, En colonne A j'ai la date (format jj/mm/aaaa hh:mm:ss). En colonne B j'ai l'évènement qui correspond à la date: entrée, début, fin,
sortie, (et la séance se répète autant de fois que nécessaire). Je voudrais regrouper en colonne C toutes les valeurs de durée comprise entre la date de "entrée" et celle de "début", autant de fois que la séquence s'est produite. Voici mon code (il ne marche pas): Sub Trieuse() Dim avant Dim apres Dim Calcul Dim cell As Range For Each cell In Range("B:B") If cell.Value = "Entree" Then avant = ActiveCell.Offset(0, -1).Value apres = ActiveCell.Offset(-1, -1).Value Calcul = apres-avant Range("C65536").End(xlUp).Offset(1, 0).valueÊlcul End If Next cell End Sub
Merci +++ de m'aider à ouvrir les yeux
Merci Jacky.
La macro fonctionne avec ça.
A bientôt.
"Jacky" <nospams@non.com> a écrit dans le message de news:
%234ce3op3GHA.5032@TK2MSFTNGP04.phx.gbl...
Bonjour,
Merci +++ de m'aider à ouvrir les yeux
J'ai pas tout compris, mais
remplace déjà ceci
'--------
For Each cell In Range("B1:b" & Range("b65536").End(3).Row)
'-----
avant = cell.Offset(0, -1).Value
apres = cell.Offset(1, -1).Value
'-----
Salutations
JJ
"ManBas" <nonospamMaBas@wanadoo.fr> a écrit dans le message de
news:e3$lTyo3GHA.1252@TK2MSFTNGP04.phx.gbl...
Bonsoir à tous,
En colonne A j'ai la date (format jj/mm/aaaa hh:mm:ss).
En colonne B j'ai l'évènement qui correspond à la date: entrée, début,
fin,
sortie, (et la séance se répète autant de fois que nécessaire).
Je voudrais regrouper en colonne C toutes les valeurs de durée comprise
entre la date de "entrée" et celle de "début", autant de fois que la
séquence s'est produite.
Voici mon code (il ne marche pas):
Sub Trieuse()
Dim avant
Dim apres
Dim Calcul
Dim cell As Range
For Each cell In Range("B:B")
If cell.Value = "Entree" Then
avant = ActiveCell.Offset(0, -1).Value
apres = ActiveCell.Offset(-1, -1).Value
Calcul = apres-avant
Range("C65536").End(xlUp).Offset(1, 0).valueÊlcul
End If
Next cell
End Sub
Merci Jacky. La macro fonctionne avec ça. A bientôt.
"Jacky" a écrit dans le message de news: %
Bonjour,
Merci +++ de m'aider à ouvrir les yeux
J'ai pas tout compris, mais remplace déjà ceci '-------- For Each cell In Range("B1:b" & Range("b65536").End(3).Row) '----- avant = cell.Offset(0, -1).Value apres = cell.Offset(1, -1).Value '-----
Salutations JJ
"ManBas" a écrit dans le message de news:e3$
Bonsoir à tous, En colonne A j'ai la date (format jj/mm/aaaa hh:mm:ss). En colonne B j'ai l'évènement qui correspond à la date: entrée, début, fin,
sortie, (et la séance se répète autant de fois que nécessaire). Je voudrais regrouper en colonne C toutes les valeurs de durée comprise entre la date de "entrée" et celle de "début", autant de fois que la séquence s'est produite. Voici mon code (il ne marche pas): Sub Trieuse() Dim avant Dim apres Dim Calcul Dim cell As Range For Each cell In Range("B:B") If cell.Value = "Entree" Then avant = ActiveCell.Offset(0, -1).Value apres = ActiveCell.Offset(-1, -1).Value Calcul = apres-avant Range("C65536").End(xlUp).Offset(1, 0).valueÊlcul End If Next cell End Sub