Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Macro VBA Excel (Doublon,SansAccents,Maj,Min,Nompropre,Espaces superflus)

patricktoulon

XLDnaute Barbatruc
non tu va etre surpris thierry
les macro fonctionne car dans le exportedUI on voit bien que le chemin de la macro est complet chemin du fichier>module>nom macro
ça a le désavantage d'ouvrir le fichier contenant la macro
mais perso si c'est un xla(m) plus besoins d'activer la ref (TU ME SUIS )
 

Virginie17d

XLDnaute Occasionnel
Re

Oui j'ai vu tes commentaires qui sont très claires, ce que je comprends c'est que pour mon module caractères qui permet de remplacer les caractères en je n'ai pas de moyen technique me permettant de créer un accès rapide dans le ruban.
Et effectivement je confirme que mes macros sont enregistrés dans le fichier Personnal afin de l'avoir à chaque ouverture de fichier sur mon pc. N'hésite pas à me reprendre si j'ai mal interprété. et j'attends de vos nouvelles quant aux restes.

Merci à vous
 

Virginie17d

XLDnaute Occasionnel
O
re


[#humour]
perso a fin d'éviter la migraine les gogole je les évitent
les gouts et les couleurs ce que j'en dis moi
[#humour]

pour le reste , je te montre comment je fait en #post9
tes macros fonctionnent (voir démo animée )
Je te suis à 300% j'ai dormis 2heures, captivée par ces nouvelles découvertes en les testant une à une jusqu'a trouver celle qui correspondait le mieux à mon besoin. mais a priori j'ai dormis 2heures de trop car je n'ai pas trouvé .Et Mes Macros fonctionnent partiellement pour certains et j'ai des erreurs d'exécution tel que "incomptabilité de type" que je ne sais pas résoudre. Mais pour une expérience de 24h, je me trouve pas mal [#humour]

Mais je vous laisse le temps, je suis pas à la minute, c'est déjà hyper sympa de me venir en aide
 

patricktoulon

XLDnaute Barbatruc
ben dans mon post 9 je travaille avec ton fichier
si tu fait exactement ce que je dis tes macros maj , min , trim space , nom propre ,fonctionnent pour concat j'ai pas testé mais l'appel est bon elle est bien appelée par le bouton
 

Virginie17d

XLDnaute Occasionnel
ben dans mon post 9 je travaille avec ton fichier
si tu fait exactement ce que je dis tes macros maj , min , trim space , nom propre ,fonctionnent pour concat j'ai pas testé mais l'appel est bon elle est bien appelée par le bouton
Pardonne moi je n'ai pas été claire, l'appel de mes Macros depuis le Ruban fonctionne, je n'ai pas de soucis, le problème est dans le contenu des modules dont les macros doit être incomplet ou faux.
 

patricktoulon

XLDnaute Barbatruc
ok
si tu veux bien tu va m'expliquer tes intention avec ta macro trim
mais c'est quoi ce bicmac
c'est sensé s'appliquer a quoi; a la selection active , a la colonne de la selection active , a tout le sheets??????????

avant de gratter les boutons faudrait peut être éclaircir tout ça

si tu veux bien essayons de travailler proprement en économisant mes neurones
répond a ma question en rouge
VB:
Sub espacessuperflus_total()

    Dim counter As Long
    Dim lastRow As Long
    Dim column As Integer
    Dim Cell As Range
    Dim Adresse As String
    Dim AdresseColumn As Integer
    Dim AdresseRow As Integer

    Adresse = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address    'recherche la dernière cellule active de votre feuille.
    AdresseColumn = Range(Adresse).column
    AdresseRow = Range(Adresse).Row

    For Each Cell In Range(Cells(1, 1), Cells(AdresseRow, AdresseColumn))
        'burck!!!!et si tu en a 7 tu fait quoi tu ajoute une ligne? et si tu en a 8
        ' tu a "Application.Trim" pour ca
        'Cell.Value = RTrim(Cell.Value) 'supprime chaque espace superflue à droite
        'Cell.Value = LTrim(Cell.Value) 'supprime chaque espace superflu à gauche
        'Cell.Value = Replace(Cell.Value, "      ", " ")   'en remplace 6
        'Cell.Value = Replace(Cell.Value, "     ", " ")   'en remplace 5
        'Cell.Value = Replace(Cell.Value, "    ", " ")   'en remplace 4
        'Cell.Value = Replace(Cell.Value, "   ", " ")   'en remplace 3
        'Cell.Value = Replace(Cell.Value, "  ", " ")   'en remplace 2
        Cell.Value = Application.Trim(cell.Value)
    Next Cell

End Sub
 

patricktoulon

XLDnaute Barbatruc
d'accords je te la simplifie alors
on va faire comme ca si tu veux bien
VB:
Sub espacessuperflus_total()
    Dim cell As Range
    For Each cell In ActiveSheet.UsedRange: cell.Value = Application.Trim(cell.Value): Next cell
End Sub
c'est tout aussi bien
 

Virginie17d

XLDnaute Occasionnel

Ok super, il est effectivement plus simple, par contre quand un espace est ajouté avant ou après un caractères tel que "-" ou "/", ca ne les supprimes pas
Ex : Valeur C4 de mon fichier Jean - Luc.jen / EXCEL par contre si j'ai une valeur Jean Luc.jen/EXCEL ca fonctionne correctement. Peut on y ajouter une condition?
 

Virginie17d

XLDnaute Occasionnel
soit
VB:
Sub espacessuperflus_total()
    Dim cell As Range
    For Each cell In ActiveSheet.UsedRange
    cell.Value = Application.Trim(Replace(Replace(cell.Value, " -", "-"), "- ", "-"))
    Next
End Sub
J'ai essayé d'ajouté, la même logique avec les "/" mais j'ai une alerte "fin d'instruction", j'ai un "hik" dans mes parenthèses

Sub espacessuperflus_total()
Dim cell As Range
For Each cell In ActiveSheet.UsedRange
cell.Value = Application.Trim(Replace(Replace(cell.Value, " -", "-"), "- ", "-"), " /", "/"), "/ ", "/"))

Next
End Sub
 

patricktoulon

XLDnaute Barbatruc
non il te manque 2 replace
cell.Value = Application.Trim(Replace(Replace(Replace(Replace(cell.Value, " -", "-"), "- ", "-"), " /", "/"), "/ ", "/"))
apres si tu a plus de truc a faire pour simplifier peut etre faudra il faire une sousboucle sur un array d'expression
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…