Selection multiple dans plage

  • Initiateur de la discussion ChristianS
  • Date de début
C

ChristianS

Guest
Bonjour le Forum,
Quelqu'un a-t-il une méthode rapide (sans boucle qui prend du temps) pour selectionner des cellules de même valeur dans une plage de cellules afin d'en changer le contenu ?
Merci d'avance.
ChS
 
M

Michel_M

Guest
salut Christian,

tu peux faire çà tout simplement en utilisant l'enregistreur de macro

avec la commande edition -rechercher-remplacer

exemple

Range("C4:G5").Select
Selection.Replace What:="zaza 2", Replacement:="tata", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False

tu peux bien sur mettre des variables à la place de zaza et tata

A+

Michel
 
G

Gérard DEZAMIS

Guest
Bonjour ChristianS et Michel_M

M_M, dans une feuille, j'ai mis ton code (un peu modifié)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Range("C4:G5").Select
Selection.Replace What:="zaza", Replacement:="tata", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A1").Select
Application.ScreenUpdating = True
End Sub

*modification simplement pour avoir en fin de travail une cellule A1 selectionnée.
J'ai mis ScreenUp..... pour éviter le clignotement !
Mais .... cela ne fonctionne pas comme prévu !
J'ai loupé une marche .... laquelle ?
Merci d'avance

@+
GD
 
M

Michel_M

Guest
Salut Gérard

Je viens de refaire la macro vite et ca marche:

Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 09/10/2004 par MM
'

'
Range("C4:H6").Select
Selection.Replace What:="zaza 3", Replacement:="titi", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A1").Select
End Sub
En regardant une 2° fois ton post c'est selection_change qui n'est pas la bonne approche.

Si tu voulais déclencher le remplacement après avoir écrit toto dans B2

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
if intersect(target, range"B2")) is nothing then exit sub

cette ligne limite l'événement à B2 sinon chaque fois que tu cliques tu déclenches le bord...

Ici, d'ailleurs vaudrait p'tet mieux un workshheet_change (je sais jamais lequel prendre)

Et c'est toujours gratos tout ca, mon cher monsieur

Amicalement

Michel
 
G

Gérard DEZAMIS

Guest
Salur Michel

Merci je vais faire l'épluchage de ton code et tenter de comprendre toutes ces finesses !

Je savais bien que je pouvais compter sur toi !

Je commence :

1 2 3 4 5 6 ..................

@+
GD
 
C

ChristianS

Guest
Merci Michel et Gérard,
Votre principe fonctionne, mais ne n'ai peut être pas assez précis dans ma demande :
Il s'agit de SELECTIONNER les cellules d'une plage contenant les mêmes valeurs avant remplacement éventuel et non pas d'une modification immédiate.
Ca change pas mal de choses....
Non non Gérard, ta macro dans la procédure évènement marche très bien.
A vous lire à nouveau.
ChS
 
A

andré

Guest
Salut,

Je suis peut-être un peu simpliste, mais voici comment je fais :

Je sélectionne la plage, puis Ctrl+H, je mentionne la valeur cherchée et celle qui doit la remplacer, enfin Remplacer tout.

Ândré.
 

Discussions similaires

Réponses
13
Affichages
661

Statistiques des forums

Discussions
312 836
Messages
2 092 656
Membres
105 479
dernier inscrit
chaussadas.renaud