Bonjour Alex, Ti, le Forum
"Up" !!, hum !! Je ne vois pas ce que çà fait ici ?
Si tu es débutant, il faut que tu commence par des choses simples, comme par exemple faire une boucle "For / Next"
Essaie ceci dans un module d'un Classeur Vierge
Sub Demo1()
Dim i As Byte
For i = 1 To 100
Cells(i, 1) = i
Next
End Sub
Cette macro écrira de 1 à 100 (i) dans les cellules A1 à A100 (Cells(Row = 1, Colonne = 1 / soit "A")
Maintenant il te faut intégrer ta Fonction Trim...
Sub Demo2()
Dim i As Byte
For i = 1 To 100
Cells(i, 1) = Trim(Cells(i, 1))
Next
End Sub
Cette Macro fera la même chose que la première au niveau de la "surface" (Plage de Cellules) traitée, mais y incorporera la Fonction Trim...
En fait il y a des boucles plus puissantes que le For / Next, par exemple le For Each / Next
Sub Demo3()
Dim Cell As Range
For Each Cell In Range("A1:A100")
Cell.Value = Trim(Cell.Value)
Next Cell
End Sub
Cette Macro Démo3, fait la même chose que la Démo2, mais en agissant sur Chaque Cellule de la Plage "A1:A100", ce qui est différent.
Maintenant on peut jouer "dynamiquement" aussi si on ne connait pas la taille de la "Surface" (Plage de Cellules) à traiter :
Sub Demo4()
Dim Cell As Range
For Each Cell In Range("A1:A" & Range("A65536").End(xlUp).Row)
Cell.Value = Trim(Cell.Value)
Next Cell
End Sub
Cette Macro Démo4, avec "Range("A1:A" & Range("A65536").EndxlUp).Row)" définit la plage en partant de "A1" jusqu'à la première cellule non vide rencontrée en partant du Bas de la feuille "A65536"...
Voilà en espèrant t'avoir apporté quelques éclaircissements quant aux possibilités de VBA ...
On peut aussi faire des choses bien plus rapides sur des grosses "Surfaces" en passant par un Tableau, mais c'est plus compliqué pour débuter :
Sub Demo5()
Dim Tablo As Variant
Dim Plage As Range
Dim i As Integer, J As Integer
Set Plage = Range("A1:A" & Range("A65536").End(xlUp).Row)
Tablo = Plage.Value
For i = 1 To Plage.Count
Tablo(i, 1) = Trim(Tablo(i, 1))
Next i
Range("A1:A" & Range("A65536").End(xlUp).Row).Value = Tablo
End Sub
Enfin Bonne découverte de VBA
@+Thierry