Excel: macro pour convertir une colonne
Résolu/Fermé
A voir également:
- Excel: macro pour convertir une colonne
- Liste déroulante excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Aller à la ligne excel - Guide
- Déplacer une colonne excel - Guide
5 réponses
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
Modifié par ccm81 le 24/09/2012 à 15:38
Modifié par ccm81 le 24/09/2012 à 15:38
bonjour
est ce que les mdp sont toujours sous la forme
xxxxxxxx suite de chiffres suivi d'un point virgule
bonne suite
est ce que les mdp sont toujours sous la forme
xxxxxxxx suite de chiffres suivi d'un point virgule
bonne suite
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
Modifié par ccm81 le 24/09/2012 à 15:52
Modifié par ccm81 le 24/09/2012 à 15:52
est ce que toutes les cellules sont de la forme
NQ: New password: 1234567891;
où le mdp
- commence après NQ: New password:
- se termine à la fin du texte (ici le ";")
en gros est ce qu'il s'agit juste de nettoyer la partie gauche de la cellule
NQ: New password: 1234567891;
où le mdp
- commence après NQ: New password:
- se termine à la fin du texte (ici le ";")
en gros est ce qu'il s'agit juste de nettoyer la partie gauche de la cellule
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
Modifié par ccm81 le 24/09/2012 à 16:05
Modifié par ccm81 le 24/09/2012 à 16:05
une proposition
mode d'emploi
- selectionner la plage à traiter
- lancer la macro
RQ. j'ai mis un espace après le dernier ":"
bonne suite
Public Sub NettoieMdp() For Each c In Selection c.Value = Replace(c.Value, "NQ: New password: ", "") Next c End Sub
mode d'emploi
- selectionner la plage à traiter
- lancer la macro
RQ. j'ai mis un espace après le dernier ":"
bonne suite
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
Modifié par ccm81 le 24/09/2012 à 16:13
Modifié par ccm81 le 24/09/2012 à 16:13
dans ma proposition le ";" fait partie du mdp
Si le texte se termine éventuellement par un caractère non numérique qui ne fait pas partie du mdp, on le supprime
c'est à peine plus compliqué
bonne suite
Si le texte se termine éventuellement par un caractère non numérique qui ne fait pas partie du mdp, on le supprime
c'est à peine plus compliqué
Public Sub NettoieMdp() Dim s As String For Each c In Selection s = c.Value s = Replace(s, "NQ: New password: ", "") If Not IsNumeric(Right(s, 1)) Then s = Left(s, Len(s) - 1) c.Value = s Next c End Sub
bonne suite
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
Modifié par michel_m le 24/09/2012 à 16:53
Modifié par michel_m le 24/09/2012 à 16:53
Bonjour les 2,
Avec une routine réutilisable sur excel ou access: enlève tout ce qui n'est pas chiffre dans la cellule; renvoie 0 si aucun chiffre
Michel
Avec une routine réutilisable sur excel ou access: enlève tout ce qui n'est pas chiffre dans la cellule; renvoie 0 si aucun chiffre
Function extrait_chiffres(ByRef texto As String) As Long Dim reg As Object Dim extraction As Object Set reg = CreateObject("vbscript.regexp") reg.Global = True reg.Pattern = "(\d?\d?\d)" Set extraction = reg.Execute(texto) For Each digit In extraction extrait_chiffres = extrait_chiffres & (digit.Value) Next digit Set extraction = Nothing Set reg = Nothing End Function Sub test() 'zone D2:D30 Dim cptr As Byte For cptr = 2 To 30 Application.ScreenUpdating = False Cells(cptr, "D") = extrait_chiffres(Cells(cptr, "D")) Next End Sub
Michel
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
24 sept. 2012 à 15:42
Il n'y a pas de rêgle précise: la suite de 10 chiffres peut etre suivie d'un espace, d'un point virgule, d'une virgule, parfois de rien...
Ca ne dépend pas de moi, ça vient d'un autre service !
MErci!!