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

diviser un colonne en beaucoup avec vba

  • Initiateur de la discussion Initiateur de la discussion alessandro
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

alessandro

XLDnaute Occasionnel
Bonjour a tous
Je souhaiterais avec une macro
diviser en 2 ou 3 ou 4 colonnes. ma colonne
Petit tableau avec example dans fichier joint.

Par avance merci. Cordialement

Alessandro
 

Pièces jointes

Re : diviser un colonne en beaucoup avec vba

Bonjour

Quel est le critère pour diviser ta colonne en n colonnes ?

Une colonne avec les chiffres pairs, une autre avec les impairs ?

Peux-tu donner plus d'explications, stp ?
 
Re : diviser un colonne en beaucoup avec vba

Bonjour

le critère pour diviser mes colonnes en n colonnes :
1)le premier element A,B,C,D etc..

2) les chiffres pair sur une colonne, une autre avec les impairs
3)et avec le sens que je indique
Alessandro
 
Re : diviser un colonne en beaucoup avec vba

Ciao
oui il s'occupe le mien c'est seulement un exemple on peux avoir beaucoup des place de A1000 jusqu'a A9999 B1000 jusqu'a B9999 C1000 jusqu'a C9999 etc
alessandro
 
Re : diviser un colonne en beaucoup avec vba

bonjour alessandro ,Staple1600
un exemple basique a adapter par contre si beaucoup de lettres diffe..il faut faire des boucles pour simplifier le code..

Code:
Sub es()
Dim i As Long
Application.ScreenUpdating = False
For i = 3 To Cells(Rows.Count, 1).End(xlUp).Row
If Right(Cells(i, 1), 1) Mod 2 = 1 And Left(Cells(i, 1), 1) = "A" Then Range("e65536").End(xlUp)(2) = Cells(i, 1)
If Right(Cells(i, 1), 1) Mod 2 = 0 And Left(Cells(i, 1), 1) = "A" Then Range("f65536").End(xlUp)(2) = Cells(i, 1)
If Right(Cells(i, 1), 1) Mod 2 = 1 And Left(Cells(i, 1), 1) = "B" Then Range("H65536").End(xlUp)(2) = Cells(i, 1)
If Right(Cells(i, 1), 1) Mod 2 = 0 And Left(Cells(i, 1), 1) = "B" Then Range("I65536").End(xlUp)(2) = Cells(i, 1)
If Right(Cells(i, 1), 1) Mod 2 = 1 And Left(Cells(i, 1), 1) = "C" Then Range("K65536").End(xlUp)(2) = Cells(i, 1)
If Right(Cells(i, 1), 1) Mod 2 = 0 And Left(Cells(i, 1), 1) = "C" Then Range("L65536").End(xlUp)(2) = Cells(i, 1)
Next i
End Sub
 
Re : diviser un colonne en beaucoup avec vba

Re

Adaptation de la macro de Laetitia pour un nombre non defini de prefixe ( A B C ..)(en ordre quelconque)

Code:
Sub es_b()
Set coll = New Collection
deb = 69
For i = 3 To Cells(Rows.Count, 1).End(xlUp).Row
 On Error Resume Next
   coll.Add Left(Cells(i, 1), 1), CStr(Left(Cells(i, 1), 1))
 On Error GoTo 0
Next i
For n = 1 To coll.Count
numcol = deb
 For i = 3 To Cells(Rows.Count, 1).End(xlUp).Row
 If Right(Cells(i, 1), 1) Mod 2 = 1 And Left(Cells(i, 1), 1) = coll(n) Then Range(Chr(numcol) & "65536").End(xlUp)(2) = Cells(i, 1)
 If Right(Cells(i, 1), 1) Mod 2 = 0 And Left(Cells(i, 1), 1) = coll(n) Then Range(Chr(numcol + 1) & "65536").End(xlUp)(2) = Cells(i, 1)
 Next i
deb = deb + 3
Next n
End Sub
 
Dernière édition:
Re : diviser un colonne en beaucoup avec vba

Bonjour
merci pour la reponse une petite chose encore comme je dis je besoin d'avoir
comme espose dans l'exemple la lettre A avec un sens,la B en autre,C comme la
A etc..
alessandro
 
Re : diviser un colonne en beaucoup avec vba

[bonsoir
le voila
A1001 A1002 B1020 B1019 C1001 C1002
A1003 A1004 B1018 B1017 C1003 C1004
A1005 A1006 B1016 B1015 C1005 C1006
A1007 A1008 B1014 B1013 C1007 C1008
A1009 A1010 B1012 B1011 C1009 C1010
A1011 A1012 B1010 B1009 C1011 C1012

il y a aussi dans l'exemple
Alessandro
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
315
Réponses
2
Affichages
114
Réponses
2
Affichages
282
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…