J'ai un fichier excel constitué de plusieurs onglet.
Dans chaque onglet, je veux utiliser la fonction remplacer pour remplacer les cellules qui contiennent les mots "nom" et "prénom" par le nom et prénom d'une personne.
J'ai récupéré ce script VB sur le forum qui fonctionne pour un onglet mais par pour plusieurs onglets.
Comment intégrer la recherche dans tout les onglets classeur ?
Sub Path()
Dim nom As String
Dim prenom As String
nom = InputBox("Nom", "Identification")
prenom = InputBox("Prenom", "Identification")
Au passage, je voudrais modifier le script pour ne pas avoir une boite de dialogue qui apparait pour entrer les nom et prénom. Je préfère taper le nom et le prénom dans 2 cellules et appliquer la fonction remplacer en cliquant sur le bouton.
En l'absence de précision, les instructions comme Cells s'appliquent à la feuille active.
Tu as juste à activer la feuille sur laquelle tu veux appliquer ton programme, genre
Sheets("ma feuille").Activate
Pour lister les feuilles, premier réflexe : la recherche.
Voir boucle For-Next et Sheets.Count, par exemple
Supprimer InputBox : c'est le b.a.ba
nom = Sheets("la feuille").Range("A1").Value
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Sub Path()
Dim nom As String
Dim prenom As String
Dim i As Integer
nom = Sheets("Feuil1").Range("E2").Value ' cellule où tu remplis le nom
prenom = Sheets("Feuil1").Range("E3").Value' cellule où tu remplis le nom
For i = 2 To Sheets.Count 'on commence à la deuxième feuille et on parcours
Sheets(i).Cells.Replace What:="nom", Replacement:=nom, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Sheets(i).Cells.Replace What:="prenom", Replacement:=prenom, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Next
MsgBox ("Done")
End Sub
Mais attention dans prenom y'as nom, à toi d'adapter....
-----------------------------------------------------------------------------------------------------------
De tous ceux qui n'ont rien à dire, les plus agréables sont ceux qui se taisent.
Un dernier détail: je voudrais qu'en cliquant sur un autre boutton, ca me réinitialise mes onglets au cas ou je fais une erreur. Après utilisation de la macro on peut pas revenir en arrière et du coup je dois fermer excel.