Je me rapproche de ma solution finale, mas il y a encore un hic !
J'ai ce code :
Selection.AutoFilter Field:=19, Criteria1:="=" 'Cherche pour les
cellules vide
Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les
cellules qui contiennent un X
Selection.AutoFilter Field:=14, Criteria1:="01" 'Cherche pour les
cellules qui contiennent 01
Range("S1").Select 'La cellule
S1 est sélectionnée
ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer
d'une cellule vers le bas à la ligne suivante (C'est là mon problème)
ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la
cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la
commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si
mon filtre me donne comme première ligne en dessous de l'en-tête de colonne
la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour
descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette
cellule. Je veux que la commande m'amène à la première ligne du résultat du
filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça
fonctionne, ça doit pouvoir fonctionner en macro.
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
MichDenis
Bonjour Richard,
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S , un X dans toutes les cellules de cette colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'-------------------------- Dim Rg As Range With Worksheets("Feuil1") Set Rg = .Range("_FilterDatabase") _ .Columns(19).SpecialCells(xlCellTypeVisible) End With Rg.Value = "X" '---------------------------
'Sinon tu pourrais faire une boucle : For each C in Rg C.value = "X" next '--------------------------
Salutations!
"Richard Martin" a écrit dans le message de news: Je me rapproche de ma solution finale, mas il y a encore un hic ! J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les cellules vide Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les cellules qui contiennent un X Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les cellules qui contiennent 01 Range("S1").Select 'La cellule S1 est sélectionnée ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer d'une cellule vers le bas à la ligne suivante (C'est là mon problème) ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si mon filtre me donne comme première ligne en dessous de l'en-tête de colonne la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette cellule. Je veux que la commande m'amène à la première ligne du résultat du filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça fonctionne, ça doit pouvoir fonctionner en macro.
Merci d'avance pour votre aide !
Richard.
Bonjour Richard,
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S , un X dans toutes les cellules de cette
colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'--------------------------
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("_FilterDatabase") _
.Columns(19).SpecialCells(xlCellTypeVisible)
End With
Rg.Value = "X"
'---------------------------
'Sinon tu pourrais faire une boucle :
For each C in Rg
C.value = "X"
next
'--------------------------
Salutations!
"Richard Martin" <nospam@nospam.com> a écrit dans le message de news: ugXorLvKFHA.3340@TK2MSFTNGP14.phx.gbl...
Je me rapproche de ma solution finale, mas il y a encore un hic !
J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les
cellules vide
Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les
cellules qui contiennent un X
Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les
cellules qui contiennent 01
Range("S1").Select 'La cellule
S1 est sélectionnée
ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer
d'une cellule vers le bas à la ligne suivante (C'est là mon problème)
ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la
cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la
commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si
mon filtre me donne comme première ligne en dessous de l'en-tête de colonne
la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour
descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette
cellule. Je veux que la commande m'amène à la première ligne du résultat du
filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça
fonctionne, ça doit pouvoir fonctionner en macro.
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S , un X dans toutes les cellules de cette colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'-------------------------- Dim Rg As Range With Worksheets("Feuil1") Set Rg = .Range("_FilterDatabase") _ .Columns(19).SpecialCells(xlCellTypeVisible) End With Rg.Value = "X" '---------------------------
'Sinon tu pourrais faire une boucle : For each C in Rg C.value = "X" next '--------------------------
Salutations!
"Richard Martin" a écrit dans le message de news: Je me rapproche de ma solution finale, mas il y a encore un hic ! J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les cellules vide Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les cellules qui contiennent un X Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les cellules qui contiennent 01 Range("S1").Select 'La cellule S1 est sélectionnée ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer d'une cellule vers le bas à la ligne suivante (C'est là mon problème) ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si mon filtre me donne comme première ligne en dessous de l'en-tête de colonne la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette cellule. Je veux que la commande m'amène à la première ligne du résultat du filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça fonctionne, ça doit pouvoir fonctionner en macro.
Merci d'avance pour votre aide !
Richard.
Richard Martin
J'essaie ça d'ici 2 jours. Merci !
"MichDenis" a écrit dans le message de news:
Bonjour Richard,
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S , un X dans toutes les cellules de cette colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'-------------------------- Dim Rg As Range With Worksheets("Feuil1") Set Rg = .Range("_FilterDatabase") _ .Columns(19).SpecialCells(xlCellTypeVisible) End With Rg.Value = "X" '---------------------------
'Sinon tu pourrais faire une boucle : For each C in Rg C.value = "X" next '--------------------------
Salutations!
"Richard Martin" a écrit dans le message de news:
Je me rapproche de ma solution finale, mas il y a encore un hic ! J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les cellules vide Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les cellules qui contiennent un X Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les cellules qui contiennent 01 Range("S1").Select 'La cellule S1 est sélectionnée ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer d'une cellule vers le bas à la ligne suivante (C'est là mon problème) ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si mon filtre me donne comme première ligne en dessous de l'en-tête de colonne la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette cellule. Je veux que la commande m'amène à la première ligne du résultat du filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça fonctionne, ça doit pouvoir fonctionner en macro.
Merci d'avance pour votre aide !
Richard.
J'essaie ça d'ici 2 jours. Merci !
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
uG6bBmvKFHA.3864@TK2MSFTNGP10.phx.gbl...
Bonjour Richard,
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S
, un X dans toutes les cellules de cette
colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'--------------------------
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("_FilterDatabase") _
.Columns(19).SpecialCells(xlCellTypeVisible)
End With
Rg.Value = "X"
'---------------------------
'Sinon tu pourrais faire une boucle :
For each C in Rg
C.value = "X"
next
'--------------------------
Salutations!
"Richard Martin" <nospam@nospam.com> a écrit dans le message de news:
ugXorLvKFHA.3340@TK2MSFTNGP14.phx.gbl...
Je me rapproche de ma solution finale, mas il y a encore un hic !
J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les
cellules vide
Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les
cellules qui contiennent un X
Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les
cellules qui contiennent 01
Range("S1").Select 'La
cellule
S1 est sélectionnée
ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour
déplacer
d'une cellule vers le bas à la ligne suivante (C'est là mon problème)
ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans
la
cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que
la
commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si
mon filtre me donne comme première ligne en dessous de l'en-tête de
colonne
la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour
descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette
cellule. Je veux que la commande m'amène à la première ligne du résultat
du
filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement
ça
fonctionne, ça doit pouvoir fonctionner en macro.
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S , un X dans toutes les cellules de cette colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'-------------------------- Dim Rg As Range With Worksheets("Feuil1") Set Rg = .Range("_FilterDatabase") _ .Columns(19).SpecialCells(xlCellTypeVisible) End With Rg.Value = "X" '---------------------------
'Sinon tu pourrais faire une boucle : For each C in Rg C.value = "X" next '--------------------------
Salutations!
"Richard Martin" a écrit dans le message de news:
Je me rapproche de ma solution finale, mas il y a encore un hic ! J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les cellules vide Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les cellules qui contiennent un X Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les cellules qui contiennent 01 Range("S1").Select 'La cellule S1 est sélectionnée ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer d'une cellule vers le bas à la ligne suivante (C'est là mon problème) ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si mon filtre me donne comme première ligne en dessous de l'en-tête de colonne la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette cellule. Je veux que la commande m'amène à la première ligne du résultat du filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça fonctionne, ça doit pouvoir fonctionner en macro.
Merci d'avance pour votre aide !
Richard.
Richard Martin
Ça c'est merveilleux et ça fonctionne. Merci !
"MichDenis" a écrit dans le message de news:
Bonjour Richard,
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S , un X dans toutes les cellules de cette colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'-------------------------- Dim Rg As Range With Worksheets("Feuil1") Set Rg = .Range("_FilterDatabase") _ .Columns(19).SpecialCells(xlCellTypeVisible) End With Rg.Value = "X" '---------------------------
'Sinon tu pourrais faire une boucle : For each C in Rg C.value = "X" next '--------------------------
Salutations!
"Richard Martin" a écrit dans le message de news:
Je me rapproche de ma solution finale, mas il y a encore un hic ! J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les cellules vide Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les cellules qui contiennent un X Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les cellules qui contiennent 01 Range("S1").Select 'La cellule S1 est sélectionnée ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer d'une cellule vers le bas à la ligne suivante (C'est là mon problème) ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si mon filtre me donne comme première ligne en dessous de l'en-tête de colonne la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette cellule. Je veux que la commande m'amène à la première ligne du résultat du filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça fonctionne, ça doit pouvoir fonctionner en macro.
Merci d'avance pour votre aide !
Richard.
Ça c'est merveilleux et ça fonctionne. Merci !
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
uG6bBmvKFHA.3864@TK2MSFTNGP10.phx.gbl...
Bonjour Richard,
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S
, un X dans toutes les cellules de cette
colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'--------------------------
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("_FilterDatabase") _
.Columns(19).SpecialCells(xlCellTypeVisible)
End With
Rg.Value = "X"
'---------------------------
'Sinon tu pourrais faire une boucle :
For each C in Rg
C.value = "X"
next
'--------------------------
Salutations!
"Richard Martin" <nospam@nospam.com> a écrit dans le message de news:
ugXorLvKFHA.3340@TK2MSFTNGP14.phx.gbl...
Je me rapproche de ma solution finale, mas il y a encore un hic !
J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les
cellules vide
Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les
cellules qui contiennent un X
Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les
cellules qui contiennent 01
Range("S1").Select 'La
cellule
S1 est sélectionnée
ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour
déplacer
d'une cellule vers le bas à la ligne suivante (C'est là mon problème)
ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans
la
cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que
la
commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si
mon filtre me donne comme première ligne en dessous de l'en-tête de
colonne
la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour
descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette
cellule. Je veux que la commande m'amène à la première ligne du résultat
du
filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement
ça
fonctionne, ça doit pouvoir fonctionner en macro.
Si ta plage est déjà filtré et que tu veuilles inscrire dans la colonne S , un X dans toutes les cellules de cette colonne qui est visible suite à l'application du filtre :
Je n'ai pas saisi la finalité de ton opération ...
'-------------------------- Dim Rg As Range With Worksheets("Feuil1") Set Rg = .Range("_FilterDatabase") _ .Columns(19).SpecialCells(xlCellTypeVisible) End With Rg.Value = "X" '---------------------------
'Sinon tu pourrais faire une boucle : For each C in Rg C.value = "X" next '--------------------------
Salutations!
"Richard Martin" a écrit dans le message de news:
Je me rapproche de ma solution finale, mas il y a encore un hic ! J'ai ce code :
Selection.AutoFilter Field:, Criteria1:="=" 'Cherche pour les cellules vide Selection.AutoFilter Field:=2, Criteria1:="X" 'Cherche pour les cellules qui contiennent un X Selection.AutoFilter Field:, Criteria1:="01" 'Cherche pour les cellules qui contiennent 01 Range("S1").Select 'La cellule S1 est sélectionnée ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate 'Pour déplacer d'une cellule vers le bas à la ligne suivante (C'est là mon problème) ActiveCell.FormulaR1C1 = "X" 'Écrit un X dans la cellule ou on est positionné (Normalement cellule S?)
'Dans l'exemple ci-dessus ça donne S2 et ça devrait être S242
Je veux faire écrire un X dans la cellule suivante. le problème est que la commande qui envoie à une cellule plus bas ne respecte pas le filtre. Si mon filtre me donne comme première ligne en dessous de l'en-tête de colonne la ligne 242 et que je suis dans l'en-tête cellule S1, la commande pour descendre d'une ligne co-dessus m'amème en S2 et mon X s'écrit dans cette cellule. Je veux que la commande m'amène à la première ligne du résultat du filtre, c'est à dire dans mon exemple ici, la cellule S242. Manuellement ça fonctionne, ça doit pouvoir fonctionner en macro.