[Excell] Comparer 2 cellule dans 1 colone
Résolu/Fermé
NarcisseJulien
Messages postés
27
Date d'inscription
mercredi 22 juin 2011
Statut
Membre
Dernière intervention
25 juin 2011
-
Modifié par NarcisseJulien le 23/06/2011 à 10:37
NarcisseJulien Messages postés 27 Date d'inscription mercredi 22 juin 2011 Statut Membre Dernière intervention 25 juin 2011 - 24 juin 2011 à 13:14
NarcisseJulien Messages postés 27 Date d'inscription mercredi 22 juin 2011 Statut Membre Dernière intervention 25 juin 2011 - 24 juin 2011 à 13:14
A voir également:
- [Excell] Comparer 2 cellule dans 1 colone
- Aller à la ligne dans une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Verrouiller cellule excel - Guide
- Word numéro de page 1/2 - Guide
- Fusionner 2 cellules excel - Guide
4 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
23 juin 2011 à 12:15
23 juin 2011 à 12:15
pour le "i" j'ai dit "et encore" (ce serait long à t'expliquer mais si un jour tu suis des cours au CNAM, tu te feras jeter des labos à juste titre) :o)
tu veux additionner toutes les cellules de la colonne E à AG (sauf le jour bien sûr); mais il faudrait dire quelles colonnes ne sont pas à additionner
au besoin
mettre un extrait du classeur sans données confidentielles en pièce jointe (format XL97-2003) sur
http://cijoint.fr/
et faire un clic droit sur le lien proposé puis "copier l'adresse du lien" et coller dans le message de réponse
tu veux additionner toutes les cellules de la colonne E à AG (sauf le jour bien sûr); mais il faudrait dire quelles colonnes ne sont pas à additionner
au besoin
mettre un extrait du classeur sans données confidentielles en pièce jointe (format XL97-2003) sur
http://cijoint.fr/
et faire un clic droit sur le lien proposé puis "copier l'adresse du lien" et coller dans le message de réponse
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
23 juin 2011 à 23:01
23 juin 2011 à 23:01
voilà la b^te
https://www.cjoint.com/?0FxwZg6K3fW
j'ai voulu faire ça ce soir car demain matin de bonne heure, arrachage de 1 ou 2 dents "ya du boulot" m'a dit le bourreau.... alors l'après-midi ne sera pas tellement XL mais plutôt doliprane!
la restitution se fait dans la feuille provisoire pour l'instant. Tu m'as dit que les jours étaient des numéros, OK, mais il y aura peut-^tre des problèmes si tu es au format date
la macro pour amuser les touristes CCM:
https://www.cjoint.com/?0FxwZg6K3fW
j'ai voulu faire ça ce soir car demain matin de bonne heure, arrachage de 1 ou 2 dents "ya du boulot" m'a dit le bourreau.... alors l'après-midi ne sera pas tellement XL mais plutôt doliprane!
la restitution se fait dans la feuille provisoire pour l'instant. Tu m'as dit que les jours étaient des numéros, OK, mais il y aura peut-^tre des problèmes si tu es au format date
la macro pour amuser les touristes CCM:
Option Explicit Option Base 1 Sub regrouper_dates_continues() Dim Lig_fin As Integer, Nbre As Integer, Col As Byte Dim Cptr_in As Integer, Cptr_out As Integer, Cptr As Integer Dim T_in, T_out '-------Préparation With Sheets("pieces") Lig_fin = .Range("AK35000").End(xlUp).Row T_in = .Range("E13:AK" & Lig_fin).Value Nbre = UBound(T_in) ReDim T_out(Nbre, 33) End With Nbre = UBound(T_in) Cptr_out = 1 '---------Calculs '1° des jours For Col = 1 To 33 T_out(1, Col) = T_in(1, Col) Next For Cptr_in = 2 To Nbre Cptr = Cptr_in - 1 'si les jours se suivent dans T_in, on reste sur le m^me compteur T_out _ et on implémente les lignes de T_in If T_in(Cptr_in, 33) - T_in(Cptr, 33) = 1 Then For Col = 1 To 32 T_out(Cptr_out, Col) = T_out(Cptr_out, Col) + T_in(Cptr_in, Col) Next T_out(Cptr_out, 33) = T_in(Cptr_in, 33) 'sinon on on implémente le compteut T_out Else Cptr_out = Cptr_out + 1 For Col = 1 To 33 T_out(Cptr_out, Col) = T_in(Cptr_in, Col) Next End If Next '----- Restitution en feuille provisoire Application.ScreenUpdating = False With Sheets("provisoire") With .Range("E13").Resize(Cptr_out, 33) .Value = T_out .Borders.Weight = xlThin End With .Activate End With End Sub
NarcisseJulien
Messages postés
27
Date d'inscription
mercredi 22 juin 2011
Statut
Membre
Dernière intervention
25 juin 2011
1
24 juin 2011 à 08:48
24 juin 2011 à 08:48
Merci beaucoup Michel !
Je vais tester tous ça =)) , et bonne chance pour ta matiné dentaire .. et ton aprem doliprane ;)
Je vais tester tous ça =)) , et bonne chance pour ta matiné dentaire .. et ton aprem doliprane ;)
NarcisseJulien
Messages postés
27
Date d'inscription
mercredi 22 juin 2011
Statut
Membre
Dernière intervention
25 juin 2011
1
24 juin 2011 à 11:40
24 juin 2011 à 11:40
Cela fonctionne parfaitement, dans le cas ou mes jours sont donc bien au format chiffre.
Ce qui me ramène à un autre problème, le cas du 31 janvier au 1 Février (par exemple), je vai essayer de voir pour modifier ce que tu m'as proposer afin qu'il fasse la comparaison avec les dates...
Ce qui me ramène à un autre problème, le cas du 31 janvier au 1 Février (par exemple), je vai essayer de voir pour modifier ce que tu m'as proposer afin qu'il fasse la comparaison avec les dates...
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 24/06/2011 à 12:14
Modifié par michel_m le 24/06/2011 à 12:14
bonjour
de retour du club med...
je viens d'essayer avec des dates en AK: pas de pb
remarque: dans les jours contigus, c'est la date la + récente qui est marquée
de retour du club med...
je viens d'essayer avec des dates en AK: pas de pb
remarque: dans les jours contigus, c'est la date la + récente qui est marquée
NarcisseJulien
Messages postés
27
Date d'inscription
mercredi 22 juin 2011
Statut
Membre
Dernière intervention
25 juin 2011
1
Modifié par NarcisseJulien le 24/06/2011 à 13:14
Modifié par NarcisseJulien le 24/06/2011 à 13:14
Ouaip, c 'est bon ca marche nickel avec les dates xD
Tu est vraiment un boss Michel !
Merci infiniement =)
Tu est vraiment un boss Michel !
Merci infiniement =)
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 23/06/2011 à 11:19
Modifié par michel_m le 23/06/2011 à 11:19
Re,
pas compris
par exemple j'ai 10 dans AK13
si j'ai 11 dans AK14 AK14 est égal à 21
dans la cellule en dessous je déclenche si j'ai 22 ou 12 ?
mais si j'ai dans cette cellule en dessous 30, je passe et encore en dessous si j'ai 31 je déclenche ou je déclenche si 13
t'y tiens aux variables à 1 lettre !!!
Michel
pas compris
par exemple j'ai 10 dans AK13
si j'ai 11 dans AK14 AK14 est égal à 21
dans la cellule en dessous je déclenche si j'ai 22 ou 12 ?
mais si j'ai dans cette cellule en dessous 30, je passe et encore en dessous si j'ai 31 je déclenche ou je déclenche si 13
t'y tiens aux variables à 1 lettre !!!
Michel
NarcisseJulien
Messages postés
27
Date d'inscription
mercredi 22 juin 2011
Statut
Membre
Dernière intervention
25 juin 2011
1
Modifié par NarcisseJulien le 23/06/2011 à 13:04
Modifié par NarcisseJulien le 23/06/2011 à 13:04
Je croyait que les variable à une lettre était tolérée dans le cas d'une utilisation dans une boucle xD, m'enfin je ferais attention maintenant, Promis ! ^^
Donc si tu veut j'ai des donnée mes ligne allant de la colone E à la colone AG. Tous mes lignes ont un chiffre dans la colone AK. (ce chiffre est le numéro du jour en fait...)(les autre donnée sur la ligne sont des donné genre,combien de pieces ont été faite ect)
Donc si tu veux entre deux lignes, si les numéro qui figure dans la colone ak se suivent, cela veut dire que les jours se sont suivit... et qu'il sagit donc en fait de une seule est unique campagne de la piece. ( en quleque sorte, sa production na pas connu d'interuption).
Je veut donc rassembler toute les lignes qui ont des jour qui se suivent en une seule est unique ligne. ( en sommant dans 1 lignes, toutes les valeur des autre lignes des jours qui se suivent)
C'est pourquoi je conserve dans la variable "sto" le chiffre de la seconde ligne du test, afin de le réinscrire dans la cellule ak apres la somme des deux lignes. pour refaire le test si jamais la troisieme ligne suivait aussi.. je te refait un exemple mieu :
Exemple :
J'ai ça :
E13 = 5 ; AK13 = 17
E14 = 4 ; AK14 = 19
E15 = 87 ; AK15 = 20
E16 = 14 ; AK16 = 22
E17 = 21 ; AK17 = 24
E18 = 45 ; AK18 = 26
E19 = 1 ; AK19 = 27
E20 = 34 ; AK20 = 28
E21 = 51 ; AK21 = 31
l
(Pastis) xD
Je veu :
E13 = 5 ; AK13 = 17
E14 = 91 ; AK14 = 20
E15 = 14 ; AK16 = 22
E16 = 21 ; AK17 = 24
E17 = 80 ; AK18 = 28
E18 = 51 ; AK18 = 31
Je croi tu comprendras mieu du coup.
Et bonne appetit =)
Donc si tu veut j'ai des donnée mes ligne allant de la colone E à la colone AG. Tous mes lignes ont un chiffre dans la colone AK. (ce chiffre est le numéro du jour en fait...)(les autre donnée sur la ligne sont des donné genre,combien de pieces ont été faite ect)
Donc si tu veux entre deux lignes, si les numéro qui figure dans la colone ak se suivent, cela veut dire que les jours se sont suivit... et qu'il sagit donc en fait de une seule est unique campagne de la piece. ( en quleque sorte, sa production na pas connu d'interuption).
Je veut donc rassembler toute les lignes qui ont des jour qui se suivent en une seule est unique ligne. ( en sommant dans 1 lignes, toutes les valeur des autre lignes des jours qui se suivent)
C'est pourquoi je conserve dans la variable "sto" le chiffre de la seconde ligne du test, afin de le réinscrire dans la cellule ak apres la somme des deux lignes. pour refaire le test si jamais la troisieme ligne suivait aussi.. je te refait un exemple mieu :
Exemple :
J'ai ça :
E13 = 5 ; AK13 = 17
E14 = 4 ; AK14 = 19
E15 = 87 ; AK15 = 20
E16 = 14 ; AK16 = 22
E17 = 21 ; AK17 = 24
E18 = 45 ; AK18 = 26
E19 = 1 ; AK19 = 27
E20 = 34 ; AK20 = 28
E21 = 51 ; AK21 = 31
l
(Pastis) xD
Je veu :
E13 = 5 ; AK13 = 17
E14 = 91 ; AK14 = 20
E15 = 14 ; AK16 = 22
E16 = 21 ; AK17 = 24
E17 = 80 ; AK18 = 28
E18 = 51 ; AK18 = 31
Je croi tu comprendras mieu du coup.
Et bonne appetit =)
23 juin 2011 à 13:35
J'ai refait un pti classeur avec des donnée totalement aléatoire où figure un exemple de ce ke j'ai, et le resultat que je cherche a obtenir.
En fait :
- faire un test sur deux lignes (Si les jours se suivent ou pas )
- si oui ( additionner la totalité de la ligne 2 avec la ligne 1) et ecrire le jour de la deuxieme ligne dans la celule du jour.
-si non passez au couple de ligne suivante.
et continuer a verifier jusk'en ba du tableau.
23 juin 2011 à 13:43
23 juin 2011 à 14:14
23 juin 2011 à 18:06
Modifié par NarcisseJulien le 23/06/2011 à 18:22