Quelqu'un pourrait-il m'aider s.v.p.?
Je voudrais que cette procédure vérifie les couleurs uniquement dans la
feuille "doublons" et non pas dans toutes les feuilles du classeur.
Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
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
isabelle
bonjour Guy,
For Each c In ActiveSheet.Range("A1:G100") 'plage à déterminer
ou bien
For Each c In Sheets("doublons").Range("A1:G100")
isabelle
guy boily a écrit :
Bonjour à toutes et tous,
Quelqu'un pourrait-il m'aider s.v.p.? Je voudrais que cette procédure vérifie les couleurs uniquement dans la feuille "doublons" et non pas dans toutes les feuilles du classeur. Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
Merci boucoup pour votre aide.
bonjour Guy,
For Each c In ActiveSheet.Range("A1:G100") 'plage à déterminer
ou bien
For Each c In Sheets("doublons").Range("A1:G100")
isabelle
guy boily a écrit :
Bonjour à toutes et tous,
Quelqu'un pourrait-il m'aider s.v.p.?
Je voudrais que cette procédure vérifie les couleurs uniquement dans la
feuille "doublons" et non pas dans toutes les feuilles du classeur.
Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
For Each c In ActiveSheet.Range("A1:G100") 'plage à déterminer
ou bien
For Each c In Sheets("doublons").Range("A1:G100")
isabelle
guy boily a écrit :
Bonjour à toutes et tous,
Quelqu'un pourrait-il m'aider s.v.p.? Je voudrais que cette procédure vérifie les couleurs uniquement dans la feuille "doublons" et non pas dans toutes les feuilles du classeur. Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
Merci boucoup pour votre aide.
garnote
Salut Guy,
Quelque chose du genre, peut-être :
Sub Test() Dim couleurs() Dim c As Range For Each c In ActiveWorkbook.Sheets("doublons").Range("A1:A5") i = i + 1 ReDim Preserve couleurs(i) couleurs(i) = c.Interior.ColorIndex Next c For j = 1 To i Message = Message & vbLf & couleurs(j) Next j MsgBox Message End Sub
Serge
"guy boily" a écrit dans le message de news:
Bonjour à toutes et tous,
Quelqu'un pourrait-il m'aider s.v.p.? Je voudrais que cette procédure vérifie les couleurs uniquement dans la feuille "doublons" et non pas dans toutes les feuilles du classeur. Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
Merci boucoup pour votre aide. -- boigu
Salut Guy,
Quelque chose du genre, peut-être :
Sub Test()
Dim couleurs()
Dim c As Range
For Each c In ActiveWorkbook.Sheets("doublons").Range("A1:A5")
i = i + 1
ReDim Preserve couleurs(i)
couleurs(i) = c.Interior.ColorIndex
Next c
For j = 1 To i
Message = Message & vbLf & couleurs(j)
Next j
MsgBox Message
End Sub
Serge
"guy boily" <guyboily@discussions.microsoft.com> a écrit dans le message de
news: 20BAF776-33E3-4A50-9D11-DAE5ACD05CE1@microsoft.com...
Bonjour à toutes et tous,
Quelqu'un pourrait-il m'aider s.v.p.?
Je voudrais que cette procédure vérifie les couleurs uniquement dans la
feuille "doublons" et non pas dans toutes les feuilles du classeur.
Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
Sub Test() Dim couleurs() Dim c As Range For Each c In ActiveWorkbook.Sheets("doublons").Range("A1:A5") i = i + 1 ReDim Preserve couleurs(i) couleurs(i) = c.Interior.ColorIndex Next c For j = 1 To i Message = Message & vbLf & couleurs(j) Next j MsgBox Message End Sub
Serge
"guy boily" a écrit dans le message de news:
Bonjour à toutes et tous,
Quelqu'un pourrait-il m'aider s.v.p.? Je voudrais que cette procédure vérifie les couleurs uniquement dans la feuille "doublons" et non pas dans toutes les feuilles du classeur. Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
Merci boucoup pour votre aide. -- boigu
guy boily
Bonjour Isabelle,
merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une autre application) et que j'essaie de modifier pour qu'elle ne s'applique uniquement à la feuille "doublons". Je n'y arrive pas même avec ta suggestion. Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours de données recopiées dans ma feuille "contrôle" alors que jai boucoup de cellulles qui sont coloriées dans mon champ f:f de la feullle doublons. Peux-tu s.v.p. regarder
Merci boucoup
Sub Macro1() ' ' Macro1 Macro ' Macro enregistrée le 2008-12-02 par boigu01 ' Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each s In Sheets("doublons").Range("f:f") On Error Resume Next Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23) For Each C In champ
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ s.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C Next s End sub -- boigu
"isabelle" a écrit :
bonjour Guy,
For Each c In ActiveSheet.Range("A1:G100") 'plage à déterminer
ou bien
For Each c In Sheets("doublons").Range("A1:G100")
isabelle
guy boily a écrit : > Bonjour à toutes et tous, > > Quelqu'un pourrait-il m'aider s.v.p.? > Je voudrais que cette procédure vérifie les couleurs uniquement dans la > feuille "doublons" et non pas dans toutes les feuilles du classeur. > Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>? > > Merci boucoup pour votre aide. >
Bonjour Isabelle,
merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié
ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une
autre application) et que j'essaie de modifier pour qu'elle ne s'applique
uniquement à la feuille "doublons". Je n'y arrive pas même avec ta
suggestion.
Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a
quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours
de données recopiées dans ma feuille "contrôle" alors que jai boucoup de
cellulles qui sont coloriées dans mon champ f:f de la feullle doublons.
Peux-tu s.v.p. regarder
Merci boucoup
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 2008-12-02 par boigu01
'
Dim C As Range
Application.DisplayAlerts = False
On Error Resume Next
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "contrôle"
Sheets("doublons").Select
ligne = 1
For Each s In Sheets("doublons").Range("f:f")
On Error Resume Next
Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23)
For Each C In champ
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err =
0 Then
Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _
s.Cells(C.Row, 1).Resize(1, 252).Value
ligne = ligne + 1
End If
Next C
Next s
End sub
--
boigu
"isabelle" a écrit :
bonjour Guy,
For Each c In ActiveSheet.Range("A1:G100") 'plage à déterminer
ou bien
For Each c In Sheets("doublons").Range("A1:G100")
isabelle
guy boily a écrit :
> Bonjour à toutes et tous,
>
> Quelqu'un pourrait-il m'aider s.v.p.?
> Je voudrais que cette procédure vérifie les couleurs uniquement dans la
> feuille "doublons" et non pas dans toutes les feuilles du classeur.
> Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
>
> Merci boucoup pour votre aide.
>
merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une autre application) et que j'essaie de modifier pour qu'elle ne s'applique uniquement à la feuille "doublons". Je n'y arrive pas même avec ta suggestion. Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours de données recopiées dans ma feuille "contrôle" alors que jai boucoup de cellulles qui sont coloriées dans mon champ f:f de la feullle doublons. Peux-tu s.v.p. regarder
Merci boucoup
Sub Macro1() ' ' Macro1 Macro ' Macro enregistrée le 2008-12-02 par boigu01 ' Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each s In Sheets("doublons").Range("f:f") On Error Resume Next Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23) For Each C In champ
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ s.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C Next s End sub -- boigu
"isabelle" a écrit :
bonjour Guy,
For Each c In ActiveSheet.Range("A1:G100") 'plage à déterminer
ou bien
For Each c In Sheets("doublons").Range("A1:G100")
isabelle
guy boily a écrit : > Bonjour à toutes et tous, > > Quelqu'un pourrait-il m'aider s.v.p.? > Je voudrais que cette procédure vérifie les couleurs uniquement dans la > feuille "doublons" et non pas dans toutes les feuilles du classeur. > Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>? > > Merci boucoup pour votre aide. >
guy boily
Bonjour Serge Merci de ta réponse j'ai répondu à Isabelle en lui faisant part de ma procédure au complet. Pourrais-tu s.v.p la regarder et me dire qu'est-ce qui ne va pas ? Il s'agit d'une procédure pour recopier dans ma feuille "contrôle" les lignes au complet de ma feuille "doublons" mais seulement celles dans lesquelles y a une cellule de colorier dans le champ "f"
merci à bientôt -- boigu
"garnote" a écrit :
Salut Guy,
Quelque chose du genre, peut-être :
Sub Test() Dim couleurs() Dim c As Range For Each c In ActiveWorkbook.Sheets("doublons").Range("A1:A5") i = i + 1 ReDim Preserve couleurs(i) couleurs(i) = c.Interior.ColorIndex Next c For j = 1 To i Message = Message & vbLf & couleurs(j) Next j MsgBox Message End Sub
Serge
"guy boily" a écrit dans le message de news: > Bonjour à toutes et tous, > > Quelqu'un pourrait-il m'aider s.v.p.? > Je voudrais que cette procédure vérifie les couleurs uniquement dans la > feuille "doublons" et non pas dans toutes les feuilles du classeur. > Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>? > > Merci boucoup pour votre aide. > -- > boigu
Bonjour Serge
Merci de ta réponse
j'ai répondu à Isabelle en lui faisant part de ma procédure au complet.
Pourrais-tu s.v.p la regarder et me dire qu'est-ce qui ne va pas ?
Il s'agit d'une procédure pour recopier dans ma feuille "contrôle" les
lignes au complet de ma feuille "doublons" mais seulement celles dans
lesquelles y a une cellule de colorier dans le champ "f"
merci à bientôt
--
boigu
"garnote" a écrit :
Salut Guy,
Quelque chose du genre, peut-être :
Sub Test()
Dim couleurs()
Dim c As Range
For Each c In ActiveWorkbook.Sheets("doublons").Range("A1:A5")
i = i + 1
ReDim Preserve couleurs(i)
couleurs(i) = c.Interior.ColorIndex
Next c
For j = 1 To i
Message = Message & vbLf & couleurs(j)
Next j
MsgBox Message
End Sub
Serge
"guy boily" <guyboily@discussions.microsoft.com> a écrit dans le message de
news: 20BAF776-33E3-4A50-9D11-DAE5ACD05CE1@microsoft.com...
> Bonjour à toutes et tous,
>
> Quelqu'un pourrait-il m'aider s.v.p.?
> Je voudrais que cette procédure vérifie les couleurs uniquement dans la
> feuille "doublons" et non pas dans toutes les feuilles du classeur.
> Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>?
>
> Merci boucoup pour votre aide.
> --
> boigu
Bonjour Serge Merci de ta réponse j'ai répondu à Isabelle en lui faisant part de ma procédure au complet. Pourrais-tu s.v.p la regarder et me dire qu'est-ce qui ne va pas ? Il s'agit d'une procédure pour recopier dans ma feuille "contrôle" les lignes au complet de ma feuille "doublons" mais seulement celles dans lesquelles y a une cellule de colorier dans le champ "f"
merci à bientôt -- boigu
"garnote" a écrit :
Salut Guy,
Quelque chose du genre, peut-être :
Sub Test() Dim couleurs() Dim c As Range For Each c In ActiveWorkbook.Sheets("doublons").Range("A1:A5") i = i + 1 ReDim Preserve couleurs(i) couleurs(i) = c.Interior.ColorIndex Next c For j = 1 To i Message = Message & vbLf & couleurs(j) Next j MsgBox Message End Sub
Serge
"guy boily" a écrit dans le message de news: > Bonjour à toutes et tous, > > Quelqu'un pourrait-il m'aider s.v.p.? > Je voudrais que cette procédure vérifie les couleurs uniquement dans la > feuille "doublons" et non pas dans toutes les feuilles du classeur. > Par quoi remplacer <For Each s In ActiveWorkbook.Sheets>? > > Merci boucoup pour votre aide. > -- > boigu
isabelle
bonjour Guy,
si tu selectionne la feuille Sheets("doublons").Select et n'a pas besoin de le préciser pour la boucle, For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23)
Sub Macro1() Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23) On Error Resume Next If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ C.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C End Sub
isabelle
guy boily a écrit :
Bonjour Isabelle,
merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une autre application) et que j'essaie de modifier pour qu'elle ne s'applique uniquement à la feuille "doublons". Je n'y arrive pas même avec ta suggestion. Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours de données recopiées dans ma feuille "contrôle" alors que jai boucoup de cellulles qui sont coloriées dans mon champ f:f de la feullle doublons. Peux-tu s.v.p. regarder
Merci boucoup
Sub Macro1() ' ' Macro1 Macro ' Macro enregistrée le 2008-12-02 par boigu01 ' Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each s In Sheets("doublons").Range("f:f") On Error Resume Next Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23) For Each C In champ
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ s.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C Next s End sub
bonjour Guy,
si tu selectionne la feuille Sheets("doublons").Select
et n'a pas besoin de le préciser pour la boucle, For Each C In
Range("f:f").SpecialCells(xlCellTypeConstants, 23)
Sub Macro1()
Dim C As Range
Application.DisplayAlerts = False
On Error Resume Next
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "contrôle"
Sheets("doublons").Select
ligne = 1
For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23)
On Error Resume Next
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err
= 0 Then
Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _
C.Cells(C.Row, 1).Resize(1, 252).Value
ligne = ligne + 1
End If
Next C
End Sub
isabelle
guy boily a écrit :
Bonjour Isabelle,
merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié
ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une
autre application) et que j'essaie de modifier pour qu'elle ne s'applique
uniquement à la feuille "doublons". Je n'y arrive pas même avec ta
suggestion.
Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a
quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours
de données recopiées dans ma feuille "contrôle" alors que jai boucoup de
cellulles qui sont coloriées dans mon champ f:f de la feullle doublons.
Peux-tu s.v.p. regarder
Merci boucoup
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 2008-12-02 par boigu01
'
Dim C As Range
Application.DisplayAlerts = False
On Error Resume Next
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "contrôle"
Sheets("doublons").Select
ligne = 1
For Each s In Sheets("doublons").Range("f:f")
On Error Resume Next
Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23)
For Each C In champ
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err =
0 Then
Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _
s.Cells(C.Row, 1).Resize(1, 252).Value
ligne = ligne + 1
End If
Next C
Next s
End sub
si tu selectionne la feuille Sheets("doublons").Select et n'a pas besoin de le préciser pour la boucle, For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23)
Sub Macro1() Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23) On Error Resume Next If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ C.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C End Sub
isabelle
guy boily a écrit :
Bonjour Isabelle,
merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une autre application) et que j'essaie de modifier pour qu'elle ne s'applique uniquement à la feuille "doublons". Je n'y arrive pas même avec ta suggestion. Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours de données recopiées dans ma feuille "contrôle" alors que jai boucoup de cellulles qui sont coloriées dans mon champ f:f de la feullle doublons. Peux-tu s.v.p. regarder
Merci boucoup
Sub Macro1() ' ' Macro1 Macro ' Macro enregistrée le 2008-12-02 par boigu01 ' Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each s In Sheets("doublons").Range("f:f") On Error Resume Next Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23) For Each C In champ
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ s.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C Next s End sub
guy boily
bonjour isabelle
merci boucoup de m'avoir accordé un peu de ton temps ...ça marche extra
-- boigu
"isabelle" a écrit :
bonjour Guy,
si tu selectionne la feuille Sheets("doublons").Select et n'a pas besoin de le préciser pour la boucle, For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23)
Sub Macro1() Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23) On Error Resume Next If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ C.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C End Sub
isabelle
guy boily a écrit : > Bonjour Isabelle, > > merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié > ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une > autre application) et que j'essaie de modifier pour qu'elle ne s'applique > uniquement à la feuille "doublons". Je n'y arrive pas même avec ta > suggestion. > Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a > quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours > de données recopiées dans ma feuille "contrôle" alors que jai boucoup de > cellulles qui sont coloriées dans mon champ f:f de la feullle doublons. > Peux-tu s.v.p. regarder > > Merci boucoup > > > > > Sub Macro1() > ' > ' Macro1 Macro > ' Macro enregistrée le 2008-12-02 par boigu01 > ' > Dim C As Range > Application.DisplayAlerts = False > On Error Resume Next > On Error GoTo 0 > Sheets.Add after:=Sheets(Sheets.Count) > ActiveSheet.Name = "contrôle" > Sheets("doublons").Select > ligne = 1 > For Each s In Sheets("doublons").Range("f:f") > On Error Resume Next > Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23) > For Each C In champ > > If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = > 0 Then > Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ > s.Cells(C.Row, 1).Resize(1, 252).Value > ligne = ligne + 1 > End If > Next C > Next s > End sub >
bonjour isabelle
merci boucoup de m'avoir accordé un peu de ton temps ...ça marche extra
--
boigu
"isabelle" a écrit :
bonjour Guy,
si tu selectionne la feuille Sheets("doublons").Select
et n'a pas besoin de le préciser pour la boucle, For Each C In
Range("f:f").SpecialCells(xlCellTypeConstants, 23)
Sub Macro1()
Dim C As Range
Application.DisplayAlerts = False
On Error Resume Next
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "contrôle"
Sheets("doublons").Select
ligne = 1
For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23)
On Error Resume Next
If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err
= 0 Then
Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _
C.Cells(C.Row, 1).Resize(1, 252).Value
ligne = ligne + 1
End If
Next C
End Sub
isabelle
guy boily a écrit :
> Bonjour Isabelle,
>
> merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié
> ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une
> autre application) et que j'essaie de modifier pour qu'elle ne s'applique
> uniquement à la feuille "doublons". Je n'y arrive pas même avec ta
> suggestion.
> Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a
> quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours
> de données recopiées dans ma feuille "contrôle" alors que jai boucoup de
> cellulles qui sont coloriées dans mon champ f:f de la feullle doublons.
> Peux-tu s.v.p. regarder
>
> Merci boucoup
>
>
>
>
> Sub Macro1()
> '
> ' Macro1 Macro
> ' Macro enregistrée le 2008-12-02 par boigu01
> '
> Dim C As Range
> Application.DisplayAlerts = False
> On Error Resume Next
> On Error GoTo 0
> Sheets.Add after:=Sheets(Sheets.Count)
> ActiveSheet.Name = "contrôle"
> Sheets("doublons").Select
> ligne = 1
> For Each s In Sheets("doublons").Range("f:f")
> On Error Resume Next
> Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23)
> For Each C In champ
>
> If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err =
> 0 Then
> Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _
> s.Cells(C.Row, 1).Resize(1, 252).Value
> ligne = ligne + 1
> End If
> Next C
> Next s
> End sub
>
merci boucoup de m'avoir accordé un peu de ton temps ...ça marche extra
-- boigu
"isabelle" a écrit :
bonjour Guy,
si tu selectionne la feuille Sheets("doublons").Select et n'a pas besoin de le préciser pour la boucle, For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23)
Sub Macro1() Dim C As Range Application.DisplayAlerts = False On Error Resume Next On Error GoTo 0 Sheets.Add after:=Sheets(Sheets.Count) ActiveSheet.Name = "contrôle" Sheets("doublons").Select ligne = 1 For Each C In Range("f:f").SpecialCells(xlCellTypeConstants, 23) On Error Resume Next If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = 0 Then Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ C.Cells(C.Row, 1).Resize(1, 252).Value ligne = ligne + 1 End If Next C End Sub
isabelle
guy boily a écrit : > Bonjour Isabelle, > > merci de ta réponse...mais je me suis apperçu que je ne t'avais pas expédié > ma procédure au complet (que j'ai d'ailleurs obtenu sur ce site pour une > autre application) et que j'essaie de modifier pour qu'elle ne s'applique > uniquement à la feuille "doublons". Je n'y arrive pas même avec ta > suggestion. > Je ne suis pas un crack dans visual basic comme tu peux le voir. Il y a > quelque chose qui cloche pcq après exécution de la procédure je n'ai toujours > de données recopiées dans ma feuille "contrôle" alors que jai boucoup de > cellulles qui sont coloriées dans mon champ f:f de la feullle doublons. > Peux-tu s.v.p. regarder > > Merci boucoup > > > > > Sub Macro1() > ' > ' Macro1 Macro > ' Macro enregistrée le 2008-12-02 par boigu01 > ' > Dim C As Range > Application.DisplayAlerts = False > On Error Resume Next > On Error GoTo 0 > Sheets.Add after:=Sheets(Sheets.Count) > ActiveSheet.Name = "contrôle" > Sheets("doublons").Select > ligne = 1 > For Each s In Sheets("doublons").Range("f:f") > On Error Resume Next > Set champ = s.[f:f].SpecialCells(xlCellTypeConstants, 23) > For Each C In champ > > If C.Interior.ColorIndex = 6 Or C.Interior.ColorIndex = 8 And Err = > 0 Then > Sheets("Contrôle").Cells(ligne, 1).Resize(1, 252) = _ > s.Cells(C.Row, 1).Resize(1, 252).Value > ligne = ligne + 1 > End If > Next C > Next s > End sub >