sélectionner une feuille

Le
guy boily
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
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #19333501
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
Merci boucoup pour votre aide.



garnote
Le #19333611
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" 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
Merci boucoup pour votre aide.
--
boigu


guy boily
Le #19333981
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 >
> Merci boucoup pour votre aide.
>



guy boily
Le #19334221
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" 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 >
> Merci boucoup pour votre aide.
> --
> boigu





isabelle
Le #19334211
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



guy boily
Le #19334881
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
>



Publicité
Poster une réponse
Anonyme