Créer une macro pour effacer du texte
Résolu
EXANAD
Messages postés
41
Date d'inscription
Statut
Membre
Dernière intervention
-
EXANAD Messages postés 41 Date d'inscription Statut Membre Dernière intervention -
EXANAD Messages postés 41 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai une base de donnée d'email extraite d'un site qui m'a été transmise dans laquelle je dois enlever du texte à partir du mot : SMTP.
Je souhaite créer une macro qui supprimerait sur chaque ligne (tout le texte qui se trouve après SMTP....
Ex :
zyfool@hotmail.frSMTPCELINE LERAT
zyqlas@orange.frSMTPzyqlas@orange.fr
Merci pour votre aide précieuse. Car j'ai plus de 30 000 adresses à nettoyer.
J'ai une base de donnée d'email extraite d'un site qui m'a été transmise dans laquelle je dois enlever du texte à partir du mot : SMTP.
Je souhaite créer une macro qui supprimerait sur chaque ligne (tout le texte qui se trouve après SMTP....
Ex :
zyfool@hotmail.frSMTPCELINE LERAT
zyqlas@orange.frSMTPzyqlas@orange.fr
Merci pour votre aide précieuse. Car j'ai plus de 30 000 adresses à nettoyer.
A voir également:
- Créer une macro pour effacer du texte
- Créer un lien pour partager des photos - Guide
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer une adresse hotmail - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
7 réponses
Bonjour,
Excusez l'incruste
peut-^tre + rapide (30000 lignes)
essai sur 30000 lignes: 0,7 secondes (RAM_DDR: 512 Mo)
Michel
Excusez l'incruste
peut-^tre + rapide (30000 lignes)
Sub supprimer_apres_smtp() Dim tablo, derlig As Integer derlig = Columns("A").Find("*", , , , , xlPrevious).Row Application.ScreenUpdating = False tablo = Application.Transpose(Range("A2:A" & derlig).Value) For cptr = 1 To UBound(tablo) tablo(cptr) = Split(tablo(cptr), "SMTP")(0) Next Range("A2").Resize(UBound(tablo, 1)) = Application.Transpose(tablo) End Sub
essai sur 30000 lignes: 0,7 secondes (RAM_DDR: 512 Mo)
Michel
bonjour
une macro
bonne suite
une macro
Public Sub nettoieadr() Dim c As Range Dim s As String Dim p As Long Application.ScreenUpdating = False For Each c In Selection s = c.Value p = InStr(1, c, "SMTP") If p > 0 Then s = Left(s, p - 1) End If c.Value = s Next c Application.ScreenUpdating = True End Sub
bonne suite
Ok merci à vous et surtout pour votre réactivité.
Dois-je mettre les codes que vous m'avez transmis dans la fenêtre Visual Basic?
Dois-je mettre les codes que vous m'avez transmis dans la fenêtre Visual Basic?
re
le code est à mettre dans un module général Alt-F11 puis Insertion/Module
es tu sur d'avoir copié tout le code? je te mets mon fichier au cas où...
https://www.cjoint.com/?0Bpjv203Fdy
bonne journée
le code est à mettre dans un module général Alt-F11 puis Insertion/Module
es tu sur d'avoir copié tout le code? je te mets mon fichier au cas où...
https://www.cjoint.com/?0Bpjv203Fdy
bonne journée
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour Michel
Tout d'abord merci pour le script. Malheureusement je n'ai toujours pas réussi à le faire fonctionner. j'en ai besoin pour demain et j'arrive pas à comprendre ou ça bug.
J'ai copier votre script en faisant ALTF11, enregistrer la macro sous un raccourci CTRL a mais ça marche toujours pas. j'ai un message d'erreur erreur de compilation.
je n'ai jamais crée de macro jusqu'à présent....si vous pouvez m'assister. J'apprécierai beaucoup.
je voudrais vraiment apprendre :-)
Tout d'abord merci pour le script. Malheureusement je n'ai toujours pas réussi à le faire fonctionner. j'en ai besoin pour demain et j'arrive pas à comprendre ou ça bug.
J'ai copier votre script en faisant ALTF11, enregistrer la macro sous un raccourci CTRL a mais ça marche toujours pas. j'ai un message d'erreur erreur de compilation.
je n'ai jamais crée de macro jusqu'à présent....si vous pouvez m'assister. J'apprécierai beaucoup.
je voudrais vraiment apprendre :-)
chez moi ca marche sans problème
ci joint maquette d'essai avec code commenté
https://www.cjoint.com/?3BposHUs0sH
(le bouton remplir inscrit le texte sur 30000 lignes)
CTRL a est une touche de raccourci utilisé par Excel ==> ne pas l'utiliser comme déclencheur de macro
ci joint maquette d'essai avec code commenté
https://www.cjoint.com/?3BposHUs0sH
(le bouton remplir inscrit le texte sur 30000 lignes)
CTRL a est une touche de raccourci utilisé par Excel ==> ne pas l'utiliser comme déclencheur de macro