Bonjour à tous et toutes,
J'ai piqué la macro suivante sur un site mais ça me met une erreur quand
j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense
que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment
dire que unecell=une cellule de la colonne G.
Merci pour votre aide et Bonne journée
Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère)
'auteur inconnu
Dim uneCel As Range, rng As Range
For Each uneCel In Selection
'ici une condition pour sélectionner
If uneCel.Value = "En attente de réponse" Then
If rng Is Nothing Then
Set rng = uneCel.EntireRow
Else
Set rng = Union(rng, uneCel.EntireRow)
End If
End If
Next uneCel
rng.Select
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
anomymousA
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection qui est lui même un objet range ce qui permet par la méthode for each next de s'affranchir de la connaissance du nombre de ranges contenues dans le range qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille Excel active du classeur actif , on scrute chacune des cellules qui appartiennent à cette selection puis on compare leur valeur à "En Attente de réponse". Si la valeur est égale au critère, on va chercher à constituer un range appelé rng composé seulement des lignes contenant les cellules qui répondent au critères Puis à la fin du programme , on selectionne le range rng qui est composé de lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de cellules à agréger pour constituer un range par la méthiode Union. Autrement, le temps put être un peu long.
A+
Bonjour à tous et toutes, J'ai piqué la macro suivante sur un site mais ça me met une erreur quand j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment dire que unecell=une cellule de la colonne G. Merci pour votre aide et Bonne journée Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère) 'auteur inconnu
Dim uneCel As Range, rng As Range For Each uneCel In Selection 'ici une condition pour sélectionner If uneCel.Value = "En attente de réponse" Then If rng Is Nothing Then Set rng = uneCel.EntireRow Else Set rng = Union(rng, uneCel.EntireRow) End If End If Next uneCel rng.Select End Sub
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection
qui est lui même un objet range ce qui permet par la méthode for each next de
s'affranchir de la connaissance du nombre de ranges contenues dans le range
qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille
Excel active du classeur actif , on scrute chacune des cellules qui
appartiennent à cette selection puis on compare leur valeur à "En Attente de
réponse".
Si la valeur est égale au critère, on va chercher à constituer un range
appelé rng composé seulement des lignes contenant les cellules qui répondent
au critères
Puis à la fin du programme , on selectionne le range rng qui est composé de
lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de
cellules à agréger pour constituer un range par la méthiode Union. Autrement,
le temps put être un peu long.
A+
Bonjour à tous et toutes,
J'ai piqué la macro suivante sur un site mais ça me met une erreur quand
j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense
que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment
dire que unecell=une cellule de la colonne G.
Merci pour votre aide et Bonne journée
Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère)
'auteur inconnu
Dim uneCel As Range, rng As Range
For Each uneCel In Selection
'ici une condition pour sélectionner
If uneCel.Value = "En attente de réponse" Then
If rng Is Nothing Then
Set rng = uneCel.EntireRow
Else
Set rng = Union(rng, uneCel.EntireRow)
End If
End If
Next uneCel
rng.Select
End Sub
Unecel est simplement une référence à un objet range contenu dans selection qui est lui même un objet range ce qui permet par la méthode for each next de s'affranchir de la connaissance du nombre de ranges contenues dans le range qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille Excel active du classeur actif , on scrute chacune des cellules qui appartiennent à cette selection puis on compare leur valeur à "En Attente de réponse". Si la valeur est égale au critère, on va chercher à constituer un range appelé rng composé seulement des lignes contenant les cellules qui répondent au critères Puis à la fin du programme , on selectionne le range rng qui est composé de lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de cellules à agréger pour constituer un range par la méthiode Union. Autrement, le temps put être un peu long.
A+
Bonjour à tous et toutes, J'ai piqué la macro suivante sur un site mais ça me met une erreur quand j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment dire que unecell=une cellule de la colonne G. Merci pour votre aide et Bonne journée Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère) 'auteur inconnu
Dim uneCel As Range, rng As Range For Each uneCel In Selection 'ici une condition pour sélectionner If uneCel.Value = "En attente de réponse" Then If rng Is Nothing Then Set rng = uneCel.EntireRow Else Set rng = Union(rng, uneCel.EntireRow) End If End If Next uneCel rng.Select End Sub
beatrice
REbonjour, Je ne peut pas te dire à quel endroit l'erreur se produit parce que ça ne le montre pas mais le message d'erreur est Erreur d'éxécution 91 Variable objet ou variable de bloc with non défini
Au fait merci pour tes explications. Béatrice
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection qui est lui même un objet range ce qui permet par la méthode for each next de s'affranchir de la connaissance du nombre de ranges contenues dans le range qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille Excel active du classeur actif , on scrute chacune des cellules qui appartiennent à cette selection puis on compare leur valeur à "En Attente de réponse". Si la valeur est égale au critère, on va chercher à constituer un range appelé rng composé seulement des lignes contenant les cellules qui répondent au critères Puis à la fin du programme , on selectionne le range rng qui est composé de lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de cellules à agréger pour constituer un range par la méthiode Union. Autrement, le temps put être un peu long.
A+
Bonjour à tous et toutes, J'ai piqué la macro suivante sur un site mais ça me met une erreur quand j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment dire que unecell=une cellule de la colonne G. Merci pour votre aide et Bonne journée Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère) 'auteur inconnu
Dim uneCel As Range, rng As Range For Each uneCel In Selection 'ici une condition pour sélectionner If uneCel.Value = "En attente de réponse" Then If rng Is Nothing Then Set rng = uneCel.EntireRow Else Set rng = Union(rng, uneCel.EntireRow) End If End If Next uneCel rng.Select End Sub
REbonjour,
Je ne peut pas te dire à quel endroit l'erreur se produit parce que ça ne le
montre pas mais le message d'erreur est
Erreur d'éxécution 91
Variable objet ou variable de bloc with non défini
Au fait merci pour tes explications.
Béatrice
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection
qui est lui même un objet range ce qui permet par la méthode for each next de
s'affranchir de la connaissance du nombre de ranges contenues dans le range
qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille
Excel active du classeur actif , on scrute chacune des cellules qui
appartiennent à cette selection puis on compare leur valeur à "En Attente de
réponse".
Si la valeur est égale au critère, on va chercher à constituer un range
appelé rng composé seulement des lignes contenant les cellules qui répondent
au critères
Puis à la fin du programme , on selectionne le range rng qui est composé de
lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de
cellules à agréger pour constituer un range par la méthiode Union. Autrement,
le temps put être un peu long.
A+
Bonjour à tous et toutes,
J'ai piqué la macro suivante sur un site mais ça me met une erreur quand
j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense
que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment
dire que unecell=une cellule de la colonne G.
Merci pour votre aide et Bonne journée
Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère)
'auteur inconnu
Dim uneCel As Range, rng As Range
For Each uneCel In Selection
'ici une condition pour sélectionner
If uneCel.Value = "En attente de réponse" Then
If rng Is Nothing Then
Set rng = uneCel.EntireRow
Else
Set rng = Union(rng, uneCel.EntireRow)
End If
End If
Next uneCel
rng.Select
End Sub
REbonjour, Je ne peut pas te dire à quel endroit l'erreur se produit parce que ça ne le montre pas mais le message d'erreur est Erreur d'éxécution 91 Variable objet ou variable de bloc with non défini
Au fait merci pour tes explications. Béatrice
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection qui est lui même un objet range ce qui permet par la méthode for each next de s'affranchir de la connaissance du nombre de ranges contenues dans le range qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille Excel active du classeur actif , on scrute chacune des cellules qui appartiennent à cette selection puis on compare leur valeur à "En Attente de réponse". Si la valeur est égale au critère, on va chercher à constituer un range appelé rng composé seulement des lignes contenant les cellules qui répondent au critères Puis à la fin du programme , on selectionne le range rng qui est composé de lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de cellules à agréger pour constituer un range par la méthiode Union. Autrement, le temps put être un peu long.
A+
Bonjour à tous et toutes, J'ai piqué la macro suivante sur un site mais ça me met une erreur quand j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment dire que unecell=une cellule de la colonne G. Merci pour votre aide et Bonne journée Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère) 'auteur inconnu
Dim uneCel As Range, rng As Range For Each uneCel In Selection 'ici une condition pour sélectionner If uneCel.Value = "En attente de réponse" Then If rng Is Nothing Then Set rng = uneCel.EntireRow Else Set rng = Union(rng, uneCel.EntireRow) End If End If Next uneCel rng.Select End Sub
beatrice
REREbonjour, C'est bon j'ai trouvé en relisant tes explications j'ai vu ce qu'il n'allait pas. En fait c'est tout simplement parce que je n'avait pas déterminé (je ne sais pas si on dit comme ça) la sélection dans laquelle il fallait qu'il recherche la valeur. Maintenant que je l'ai fait ça marche. Merci pour tout (surtout les explications) Bonne continuation Béatrice
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection qui est lui même un objet range ce qui permet par la méthode for each next de s'affranchir de la connaissance du nombre de ranges contenues dans le range qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille Excel active du classeur actif , on scrute chacune des cellules qui appartiennent à cette selection puis on compare leur valeur à "En Attente de réponse". Si la valeur est égale au critère, on va chercher à constituer un range appelé rng composé seulement des lignes contenant les cellules qui répondent au critères Puis à la fin du programme , on selectionne le range rng qui est composé de lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de cellules à agréger pour constituer un range par la méthiode Union. Autrement, le temps put être un peu long.
A+
Bonjour à tous et toutes, J'ai piqué la macro suivante sur un site mais ça me met une erreur quand j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment dire que unecell=une cellule de la colonne G. Merci pour votre aide et Bonne journée Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère) 'auteur inconnu
Dim uneCel As Range, rng As Range For Each uneCel In Selection 'ici une condition pour sélectionner If uneCel.Value = "En attente de réponse" Then If rng Is Nothing Then Set rng = uneCel.EntireRow Else Set rng = Union(rng, uneCel.EntireRow) End If End If Next uneCel rng.Select End Sub
REREbonjour,
C'est bon j'ai trouvé en relisant tes explications j'ai vu ce qu'il n'allait
pas.
En fait c'est tout simplement parce que je n'avait pas déterminé (je ne sais
pas si on dit comme ça) la sélection dans laquelle il fallait qu'il recherche
la valeur.
Maintenant que je l'ai fait ça marche.
Merci pour tout (surtout les explications)
Bonne continuation
Béatrice
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection
qui est lui même un objet range ce qui permet par la méthode for each next de
s'affranchir de la connaissance du nombre de ranges contenues dans le range
qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille
Excel active du classeur actif , on scrute chacune des cellules qui
appartiennent à cette selection puis on compare leur valeur à "En Attente de
réponse".
Si la valeur est égale au critère, on va chercher à constituer un range
appelé rng composé seulement des lignes contenant les cellules qui répondent
au critères
Puis à la fin du programme , on selectionne le range rng qui est composé de
lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de
cellules à agréger pour constituer un range par la méthiode Union. Autrement,
le temps put être un peu long.
A+
Bonjour à tous et toutes,
J'ai piqué la macro suivante sur un site mais ça me met une erreur quand
j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense
que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment
dire que unecell=une cellule de la colonne G.
Merci pour votre aide et Bonne journée
Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère)
'auteur inconnu
Dim uneCel As Range, rng As Range
For Each uneCel In Selection
'ici une condition pour sélectionner
If uneCel.Value = "En attente de réponse" Then
If rng Is Nothing Then
Set rng = uneCel.EntireRow
Else
Set rng = Union(rng, uneCel.EntireRow)
End If
End If
Next uneCel
rng.Select
End Sub
REREbonjour, C'est bon j'ai trouvé en relisant tes explications j'ai vu ce qu'il n'allait pas. En fait c'est tout simplement parce que je n'avait pas déterminé (je ne sais pas si on dit comme ça) la sélection dans laquelle il fallait qu'il recherche la valeur. Maintenant que je l'ai fait ça marche. Merci pour tout (surtout les explications) Bonne continuation Béatrice
bonjour,
Unecel est simplement une référence à un objet range contenu dans selection qui est lui même un objet range ce qui permet par la méthode for each next de s'affranchir de la connaissance du nombre de ranges contenues dans le range qu'on scrute.
S'il y a une erreur d'exécution peux-tu dire à quel endroit exactement ?
Le code qui t'es fourni fait la chose suivante :
A partir d'une selection de cellules qui existe actuellement dans la feuille Excel active du classeur actif , on scrute chacune des cellules qui appartiennent à cette selection puis on compare leur valeur à "En Attente de réponse". Si la valeur est égale au critère, on va chercher à constituer un range appelé rng composé seulement des lignes contenant les cellules qui répondent au critères Puis à la fin du programme , on selectionne le range rng qui est composé de lignes discontinues.
Cela te va t-il comme explication ?
cette méthode est utile et efficace sous réserve de ne pas avoir trop de cellules à agréger pour constituer un range par la méthiode Union. Autrement, le temps put être un peu long.
A+
Bonjour à tous et toutes, J'ai piqué la macro suivante sur un site mais ça me met une erreur quand j'essaye de l'éxécuter. Je connais pas grand chose à tout ça mais je pense que c'est parce que je n'ai pas défini "unecell". Mas je ne sais pas comment dire que unecell=une cellule de la colonne G. Merci pour votre aide et Bonne journée Béatrice
'sélection multiple de lignes discontinues
Sub SelectionAvecUnionAméliorée(Critère) 'auteur inconnu
Dim uneCel As Range, rng As Range For Each uneCel In Selection 'ici une condition pour sélectionner If uneCel.Value = "En attente de réponse" Then If rng Is Nothing Then Set rng = uneCel.EntireRow Else Set rng = Union(rng, uneCel.EntireRow) End If End If Next uneCel rng.Select End Sub