separation terme cellule

dabom

XLDnaute Nouveau
Bonjour,

Je debute en visual basic (enfin disons que j’ai pas mal oublie). J’ai 2 problemes :


dans la colonne A, j’ai une liste d’environ 4000 termes, saisi en 3 parties, dans la forme suivante :

Colonne A
100-AAA-000
999-ABC-111
... (x 4000)

Et j’aimerai separer ces parties avec 1ere partie dans la colonne B, 2eme partie dans la colonne C et troisieme partie dans la colonne D.
Ex :
Colonne B
100
999
...
Colonne C
AAA
ABC
...
Colonne D
000
111
...

Et cela pour les environ 4000 termes.
A noter que j’ai besoin de faire cette operation qu’une seule fois. Mais faire ca 1 par 1 me parait bcp trop long.

De plus chaque terme est separe d’une ligne sans donnee. Comment, dans une feuille excel, supprimer toutes les lignes sans donnees ?


Merci d’avance pour votre aide precieuse.
(si vous me donnez les lignes de code a taper, je saurai les utiliser et les comprendre...je suis debutant, mais pas totalement debutant) ;)
 

Minick

XLDnaute Impliqué
Re : separation terme cellule

Salut,

Quelque chose comme ca:
Code:
    With Range("A1:A" & Range("A6553").End(xlUp).Row)
                
        .TextToColumns Destination:=Range("B1"), DataType:=xlDelimited, Tab:=False, _
            Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar:="-", _
            FieldInfo:=Array(Array(1, xlTextFormat), Array(2, xlTextFormat), Array(3, xlTextFormat))
                
        .SpecialCells(xlCellTypeBlanks).EntireRow.Delete xlShiftUp
    End With
 

pierrejean

XLDnaute Barbatruc
Re : separation terme cellule

bonjour dabom

A tester:

Code:
Sub test()
For n = Range("A65536").End(xlUp).Row To 1 Step -1
  If Range("A" & n) = "" Then Rows(n).Delete
Next n
For n = 1 To Range("A65536").End(xlUp).Row
 Range("B" & n) = Split(Range("A" & n), "-")(0)
 Range("C" & n) = Split(Range("A" & n), "-")(1)
 Range("D" & n) = Split(Range("A" & n), "-")(2)
Next n
End Sub

Edit : Salut Minick
 

Statistiques des forums

Discussions
312 496
Messages
2 088 979
Membres
103 996
dernier inscrit
KB4175