vba - une seule boite qui permette de saisir les deux variables InputBox("Recherche") & InputBox("Remplacer par")
8 réponses
twinley
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
Essaie avec un userform tu pourras meme mettre 50 champs si tu veux
Bye.
anonymousA
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes
versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
twinley
Merci à vous deux pour vos réponses.
Je voulais faire un truc simple sans UF, mais si cela n'existe pas avec une InputBox, je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
Merci à vous deux pour vos réponses.
Je voulais faire un truc simple sans UF, mais si cela n'existe pas avec
une InputBox, je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes
versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
Je voulais faire un truc simple sans UF, mais si cela n'existe pas avec une InputBox, je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
Youky
Salut, essai ceci, la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click() mot = Selection.Value nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot) If nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:Z1000] Set c = .Find(mot, LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do Sheets(k).Select c.Activate Selection.Value = nom rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection") If rep = vbNo Then Exit Sub Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With Next MsgBox "Recherche terminée!" End Sub
"twinley" a écrit dans le message de news:
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
Salut, essai ceci,
la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click()
mot = Selection.Value
nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot)
If nom = "" Then Exit Sub
For k = 1 To Sheets.Count
With Sheets(k).[A1:Z1000]
Set c = .Find(mot, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
Sheets(k).Select
c.Activate
Selection.Value = nom
rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection")
If rep = vbNo Then Exit Sub
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
Next
MsgBox "Recherche terminée!"
End Sub
"twinley" <twinleymax@hotmail.com> a écrit dans le message de news:
enCCub7hFHA.1460@tk2msftngp13.phx.gbl...
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
Salut, essai ceci, la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click() mot = Selection.Value nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot) If nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:Z1000] Set c = .Find(mot, LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do Sheets(k).Select c.Activate Selection.Value = nom rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection") If rep = vbNo Then Exit Sub Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With Next MsgBox "Recherche terminée!" End Sub
"twinley" a écrit dans le message de news:
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
jps
tussssss....et aussi le mien ; ne te vante pas, twinley jps
"twinley" a écrit dans le message de news:etDpA% ... je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
tussssss....et aussi le mien ; ne te vante pas, twinley
jps
"twinley" <twinleymax@hotmail.com> a écrit dans le message de
news:etDpA%237hFHA.1232@TK2MSFTNGP15.phx.gbl...
... je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes
versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
tussssss....et aussi le mien ; ne te vante pas, twinley jps
"twinley" a écrit dans le message de news:etDpA% ... je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
twinley
Merci Youki Une petite adaptation, quelques lignes de ton code pour alléger le mien et c'est bon
Bonne soirée
à+twinley
Youky wrote:
Salut, essai ceci, la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click() mot = Selection.Value nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot) If nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:Z1000] Set c = .Find(mot, LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do Sheets(k).Select c.Activate Selection.Value = nom rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection") If rep = vbNo Then Exit Sub Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With Next MsgBox "Recherche terminée!" End Sub
"twinley" a écrit dans le message de news:
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
Merci Youki
Une petite adaptation, quelques lignes de ton code pour alléger le mien
et c'est bon
Bonne soirée
à+twinley
Youky wrote:
Salut, essai ceci,
la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click()
mot = Selection.Value
nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot)
If nom = "" Then Exit Sub
For k = 1 To Sheets.Count
With Sheets(k).[A1:Z1000]
Set c = .Find(mot, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
Sheets(k).Select
c.Activate
Selection.Value = nom
rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection")
If rep = vbNo Then Exit Sub
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
Next
MsgBox "Recherche terminée!"
End Sub
"twinley" <twinleymax@hotmail.com> a écrit dans le message de news:
enCCub7hFHA.1460@tk2msftngp13.phx.gbl...
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
Merci Youki Une petite adaptation, quelques lignes de ton code pour alléger le mien et c'est bon
Bonne soirée
à+twinley
Youky wrote:
Salut, essai ceci, la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click() mot = Selection.Value nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot) If nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:Z1000] Set c = .Find(mot, LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do Sheets(k).Select c.Activate Selection.Value = nom rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection") If rep = vbNo Then Exit Sub Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With Next MsgBox "Recherche terminée!" End Sub
"twinley" a écrit dans le message de news:
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
twinley
y en a qui manque pas d'air...
;-)
à+twinley
jps wrote:
tussssss....et aussi le mien ; ne te vante pas, twinley jps
"twinley" a écrit dans le message de news:etDpA% .... je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
y en a qui manque pas d'air...
;-)
à+twinley
jps wrote:
tussssss....et aussi le mien ; ne te vante pas, twinley
jps
"twinley" <twinleymax@hotmail.com> a écrit dans le message de
news:etDpA%237hFHA.1232@TK2MSFTNGP15.phx.gbl...
.... je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes
versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
tussssss....et aussi le mien ; ne te vante pas, twinley jps
"twinley" a écrit dans le message de news:etDpA% .... je vais faire une usine à gaz. C'est mon domaine...
:)
à+twinley
anonymousA wrote:
bonjour,
ce que tu cherches s'appelle une boite de dialogue (dans les anciennes versions) ou un userform, tu ne crois pas ?
A+
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
twinley
Salut Youki
A la réflexion et après avoir compliqué les choses, ton code est génial et c'est très exactement ce dont j'ai besoin. Je jette l'usine à gaz. Tssssss... voilà la merveille. J'ai déjà une macro event anti-doublon, donc pas de boucle.
Sub renommeunclient() ' cherche le nom sélectionné en colA et le remplace dans colA ou _ colB de toutes les feuilles Sheets(1).Select rep = MsgBox("Le focus est-il sur le nom à modifier ?", _ 4 + 32, "Sélection du nom") If rep = vbNo Then MsgBox ("Positionnez le focus sur le nom à modifier et _ relancez la macro...") Exit Sub End If mot = Selection.Value Nom = InputBox("Remplacer " & mot & " par...? " & vbCrLf & vbCrLf _ & "Saisissez le nouveau nom", "Rechercher nom Client / Remplacer _ par Nouveau nom " & mot) If Nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:B200] Set C = .Find(mot, LookIn:=xlValues) If Not C Is Nothing Then firstAddress = C.Address Sheets(k).Select C.Activate Selection.Value = Nom End If End With Next Sheets(1).Select MsgBox "Modification terminée!" End Sub
Encore merci.
à+twinley
twinley wrote:
Merci Youki Une petite adaptation, quelques lignes de ton code pour alléger le mien et c'est bon
Bonne soirée
à+twinley
Youky wrote:
Salut, essai ceci, la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click() mot = Selection.Value nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot) If nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:Z1000] Set c = .Find(mot, LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do Sheets(k).Select c.Activate Selection.Value = nom rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection") If rep = vbNo Then Exit Sub Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With Next MsgBox "Recherche terminée!" End Sub
"twinley" a écrit dans le message de news:
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !
merci pour l'aide -- à+twinley
Salut Youki
A la réflexion et après avoir compliqué les choses, ton code est génial
et c'est très exactement ce dont j'ai besoin. Je jette l'usine à gaz.
Tssssss... voilà la merveille. J'ai déjà une macro event anti-doublon,
donc pas de boucle.
Sub renommeunclient()
' cherche le nom sélectionné en colA et le remplace dans colA ou _
colB de toutes les feuilles
Sheets(1).Select
rep = MsgBox("Le focus est-il sur le nom à modifier ?", _
4 + 32, "Sélection du nom")
If rep = vbNo Then
MsgBox ("Positionnez le focus sur le nom à modifier et _
relancez la macro...")
Exit Sub
End If
mot = Selection.Value
Nom = InputBox("Remplacer " & mot & " par...? " & vbCrLf & vbCrLf
_ & "Saisissez le nouveau nom", "Rechercher nom Client / Remplacer _
par Nouveau nom " & mot)
If Nom = "" Then Exit Sub
For k = 1 To Sheets.Count
With Sheets(k).[A1:B200]
Set C = .Find(mot, LookIn:=xlValues)
If Not C Is Nothing Then
firstAddress = C.Address
Sheets(k).Select
C.Activate
Selection.Value = Nom
End If
End With
Next
Sheets(1).Select
MsgBox "Modification terminée!"
End Sub
Encore merci.
à+twinley
twinley wrote:
Merci Youki
Une petite adaptation, quelques lignes de ton code pour alléger le mien
et c'est bon
Bonne soirée
à+twinley
Youky wrote:
Salut, essai ceci,
la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click()
mot = Selection.Value
nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot)
If nom = "" Then Exit Sub
For k = 1 To Sheets.Count
With Sheets(k).[A1:Z1000]
Set c = .Find(mot, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
Sheets(k).Select
c.Activate
Selection.Value = nom
rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection")
If rep = vbNo Then Exit Sub
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
Next
MsgBox "Recherche terminée!"
End Sub
"twinley" <twinleymax@hotmail.com> a écrit dans le message de news:
enCCub7hFHA.1460@tk2msftngp13.phx.gbl...
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200
pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom
de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de
la cell quand je clic sur la cellule qui contient le nom à rechercher...
Et ensuite je rentre manuellement le nouveau nom dans le champ recherche
de l'inputbox !
A la réflexion et après avoir compliqué les choses, ton code est génial et c'est très exactement ce dont j'ai besoin. Je jette l'usine à gaz. Tssssss... voilà la merveille. J'ai déjà une macro event anti-doublon, donc pas de boucle.
Sub renommeunclient() ' cherche le nom sélectionné en colA et le remplace dans colA ou _ colB de toutes les feuilles Sheets(1).Select rep = MsgBox("Le focus est-il sur le nom à modifier ?", _ 4 + 32, "Sélection du nom") If rep = vbNo Then MsgBox ("Positionnez le focus sur le nom à modifier et _ relancez la macro...") Exit Sub End If mot = Selection.Value Nom = InputBox("Remplacer " & mot & " par...? " & vbCrLf & vbCrLf _ & "Saisissez le nouveau nom", "Rechercher nom Client / Remplacer _ par Nouveau nom " & mot) If Nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:B200] Set C = .Find(mot, LookIn:=xlValues) If Not C Is Nothing Then firstAddress = C.Address Sheets(k).Select C.Activate Selection.Value = Nom End If End With Next Sheets(1).Select MsgBox "Modification terminée!" End Sub
Encore merci.
à+twinley
twinley wrote:
Merci Youki Une petite adaptation, quelques lignes de ton code pour alléger le mien et c'est bon
Bonne soirée
à+twinley
Youky wrote:
Salut, essai ceci, la selection est reprise dans l'inputbox
Private Sub CommandButton1_Click() mot = Selection.Value nom = InputBox("Remplacer " & mot & " ..? ", "Rechercher " & mot) If nom = "" Then Exit Sub For k = 1 To Sheets.Count With Sheets(k).[A1:Z1000] Set c = .Find(mot, LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do Sheets(k).Select c.Activate Selection.Value = nom rep = MsgBox("Continuer la recherche ?", 4 + 32, "Sélection") If rep = vbNo Then Exit Sub Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With Next MsgBox "Recherche terminée!" End Sub
"twinley" a écrit dans le message de news:
Bonjour à tous,
je fais une sub qui recherche le nom d'une cellule dans le range A1:A200 pour le remplacer par un autre nom sur toutes les feuilles.
J'utilise pour faire la saisie :
varrech = InputBox("Recherche")
varremp = InputBox("Remplacer par")
Existe-t-il une seule boite qui permette de saisir les deux variables ?
J'aimerai garder sous les yeux le nom recherché et pouvoir taper le nom de remplacement.
Je n'ose pas réver d'une inputbox double saisie qui prend le contenu de la cell quand je clic sur la cellule qui contient le nom à rechercher... Et ensuite je rentre manuellement le nouveau nom dans le champ recherche de l'inputbox !