Plusieurs conditions dans macro
Résolu/Fermé
cha74
Messages postés
9
Date d'inscription
vendredi 12 juillet 2013
Statut
Membre
Dernière intervention
25 juillet 2013
-
12 juil. 2013 à 17:57
cha74 Messages postés 9 Date d'inscription vendredi 12 juillet 2013 Statut Membre Dernière intervention 25 juillet 2013 - 15 juil. 2013 à 17:28
cha74 Messages postés 9 Date d'inscription vendredi 12 juillet 2013 Statut Membre Dernière intervention 25 juillet 2013 - 15 juil. 2013 à 17:28
A voir également:
- Plusieurs conditions dans macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Mise en forme conditionnelle excel plusieurs conditions - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
- Votre compte a été désactivé pour violation de nos conditions d’utilisation - Guide
7 réponses
Bonjour
sans modele ses pas facile de voir
la sur ton code ses pas <> mes =
If .Cells(Lig, Col).Value = "Ø1.80" Then
A+
Maurice
sans modele ses pas facile de voir
la sur ton code ses pas <> mes =
If .Cells(Lig, Col).Value = "Ø1.80" Then
A+
Maurice
Le Pingou
Messages postés
12230
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
15 janvier 2025
1 454
13 juil. 2013 à 22:50
13 juil. 2013 à 22:50
Bonjour,
Pouvez-vous mentionner ce qui ne marche pas ?
Pouvez-vous mentionner ce qui ne marche pas ?
cha74
Messages postés
9
Date d'inscription
vendredi 12 juillet 2013
Statut
Membre
Dernière intervention
25 juillet 2013
Modifié par cha74 le 15/07/2013 à 08:41
Modifié par cha74 le 15/07/2013 à 08:41
Merci pour vos réponses. Désolée de ne pas avoir pu répondre ce week end mais je n'avais pas accès au fichier.
Maurice : En effet en remplaçant <> par = j'obtiens le résultat escompté. J'ai donc créé la même macro mais pour les diamètres 2.00 et maintenant j'ai les lignes
Col = "c" et end with qui se surlignent en rouge avec un point à coté dans la première macro (mais ça fonctionne quand même). Savez vous comment je peux y remédier?
Le Pingou : En fait dans la feuille 1 j'ai un inventaire de stock de barres de plusieurs diamètres et je voulais que les lignes faisant référence au diamètre 80 apparaissent dans une feuille contenant déjà d'autres informations sur le diamètre 80. Ce qui ne marchait c'est que au lieu d'avoir les infos sur ce diamètre, j'avais les infos de tous les autres sauf celui ci.
Une autre question : comment je peux choisir où sont insérées les lignes? Parce que là elles apparaissent en haut à gauche et me décale tout ce qui est déjà écrit sur la feuille fØ1.80
Merci d'avance,
Charlotte
Maurice : En effet en remplaçant <> par = j'obtiens le résultat escompté. J'ai donc créé la même macro mais pour les diamètres 2.00 et maintenant j'ai les lignes
Col = "c" et end with qui se surlignent en rouge avec un point à coté dans la première macro (mais ça fonctionne quand même). Savez vous comment je peux y remédier?
Le Pingou : En fait dans la feuille 1 j'ai un inventaire de stock de barres de plusieurs diamètres et je voulais que les lignes faisant référence au diamètre 80 apparaissent dans une feuille contenant déjà d'autres informations sur le diamètre 80. Ce qui ne marchait c'est que au lieu d'avoir les infos sur ce diamètre, j'avais les infos de tous les autres sauf celui ci.
Une autre question : comment je peux choisir où sont insérées les lignes? Parce que là elles apparaissent en haut à gauche et me décale tout ce qui est déjà écrit sur la feuille fØ1.80
Merci d'avance,
Charlotte
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
15 juil. 2013 à 10:08
15 juil. 2013 à 10:08
Bonjour,
est ce qu'il faut ventiler uniquement 1.80 ou tous les diamètres présents sur la feuille1?
comme l'a demandé Maurice, voir ton classeur faciliterait les choses !
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
sinon combien as tu de colonnes: A à .... ?
est ce qu'il faut ventiler uniquement 1.80 ou tous les diamètres présents sur la feuille1?
comme l'a demandé Maurice, voir ton classeur faciliterait les choses !
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
sinon combien as tu de colonnes: A à .... ?
Bonjour
il faut avoir un model pour voir comment tu a fait ca
peux tu poster un exemple allégé et anonymé de ton fichier sur http://www.cjoint.com/
A+
Maurice
il faut avoir un model pour voir comment tu a fait ca
peux tu poster un exemple allégé et anonymé de ton fichier sur http://www.cjoint.com/
A+
Maurice
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
cha74
Messages postés
9
Date d'inscription
vendredi 12 juillet 2013
Statut
Membre
Dernière intervention
25 juillet 2013
15 juil. 2013 à 14:11
15 juil. 2013 à 14:11
Comme demandé voici le lien vers le classeur https://www.cjoint.com/?0GpogBbwi6P
michel_m : Je voudrais tester le diamètre 1.80 parmi tous les autres de la feuille 1 et que les lignes correspondantes à ce diamètre apparaissent dans un tableau à gauche de celui déjà existant dans la feuille fØ1.80.
Ensuite je ne sais pas si il faut faire plusieurs macro pour les autres diamètres (ce que j'ai commencé à faire mais ça ne fonctionne pas) ou si on peut tout faire dans une seule.
Merci d'avance,
Charlotte
michel_m : Je voudrais tester le diamètre 1.80 parmi tous les autres de la feuille 1 et que les lignes correspondantes à ce diamètre apparaissent dans un tableau à gauche de celui déjà existant dans la feuille fØ1.80.
Ensuite je ne sais pas si il faut faire plusieurs macro pour les autres diamètres (ce que j'ai commencé à faire mais ça ne fonctionne pas) ou si on peut tout faire dans une seule.
Merci d'avance,
Charlotte
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
15 juil. 2013 à 14:28
15 juil. 2013 à 14:28
OK c'est parti
Un peu de patience
Un peu de patience
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
15 juil. 2013 à 15:19
15 juil. 2013 à 15:19
Re, c'est exprès qu'il y a une colonne de moins dans les feuilles diam^tre (Etat du lot) ?
c'est pratiquement terminé sauf cette cette question
c'est pratiquement terminé sauf cette cette question
cha74
Messages postés
9
Date d'inscription
vendredi 12 juillet 2013
Statut
Membre
Dernière intervention
25 juillet 2013
15 juil. 2013 à 15:35
15 juil. 2013 à 15:35
Non ce n'est pas fait exprès. La colonne état du lot doit bien apparaître dans un tableau à droite de celui existant dans les feuilles de diamètre
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
15 juil. 2013 à 15:59
15 juil. 2013 à 15:59
Comme dans la feuille 2.0, on a "état du lot", et dans les aurtres rien :-(
c'est un vrai B.... dans l'espace de restitution colonne T à AB !!!!
ci dessous macro sur restitution avec" etat du lot"
basée sur la présentation (...)des feuilles 1.80 et 2.00
c'est un vrai B.... dans l'espace de restitution colonne T à AB !!!!
ci dessous macro sur restitution avec" etat du lot"
basée sur la présentation (...)des feuilles 1.80 et 2.00
Option Explicit Sub affectertouslesdiam() Dim Nbre As Byte, Cptr As Byte Dim T_diam(), Nb_diam As Integer Dim Lig As Integer, Cptr_lig As Integer, T_out(), Feuille As String * 6, Ligvid As Integer Application.ScreenUpdating = False 'mémorise le nom des feuilles diamêtres Nbre = Sheets.Count For Cptr = 2 To Nbre ReDim Preserve T_diam(1 To Nbre) T_diam(Cptr - 1) = Right(Sheets(Cptr).Name, 5) Next For Cptr = 1 To UBound(T_diam) With Sheets(1) Nb_diam = Application.CountIf(.Columns("C"), T_diam(Cptr)) If Nb_diam > 0 Then 'recherche des diam^tre de la feuille en cours Lig = 1 For Cptr_lig = 1 To Nb_diam Lig = .Columns("C").Find(T_diam(Cptr), .Cells(Lig, "C"), xlValues).Row T_out = .Range(.Cells(Lig, "A"), .Cells(Lig, "J")).Value Feuille = "f" & T_diam(Cptr) 'restitution dans la feuille diam^tre en courd With Sheets(Feuille) Ligvid = .Columns("T").Find("", .Range("T2")).Row .Range(.Cells(Ligvid, "T"), .Cells(Ligvid, "AB")) = T_out End With Next End If End With Next MsgBox " Répartition par diamètre terminée" End Sub
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
15 juil. 2013 à 16:03
15 juil. 2013 à 16:03
Si tu veux pour la dernière ligne remplie fait signe ( mais c'est pratiquement fait en extrayant de lignes de la macro ci dessus)
cha74
Messages postés
9
Date d'inscription
vendredi 12 juillet 2013
Statut
Membre
Dernière intervention
25 juillet 2013
Modifié par cha74 le 15/07/2013 à 16:21
Modifié par cha74 le 15/07/2013 à 16:21
Merci beaucoup pour votre aide! C'est pile ce que je voulais comme résultat. (et désolée pour la présentation de certaines colonnes, j'avoue qu'elle n'était pas top)
Encore merci d'y avoir passé du temps,
Charlotte
Encore merci d'y avoir passé du temps,
Charlotte
Bonjour
j'arrive un peux tard
mes voila ton fichier modifier
A toi de voir
http://cjoint.com/?3GpqQmod2G3
A+
Maurice
j'arrive un peux tard
mes voila ton fichier modifier
A toi de voir
http://cjoint.com/?3GpqQmod2G3
A+
Maurice
cha74
Messages postés
9
Date d'inscription
vendredi 12 juillet 2013
Statut
Membre
Dernière intervention
25 juillet 2013
15 juil. 2013 à 17:28
15 juil. 2013 à 17:28
Merci beaucoup quand même =) C'est la première fois que je poste sur un forum comme celui ci et je ne pensais pas qu'on m'aiderais autant.
Charlotte
Charlotte