Ajouter une ligne dans l'ordre alphabétique [Résolu]

Messages postés
12
Date d'inscription
jeudi 19 avril 2012
Dernière intervention
30 mai 2012
- - Dernière réponse : simoh1313
Messages postés
12
Date d'inscription
jeudi 19 avril 2012
Dernière intervention
30 mai 2012
- 27 avril 2012 à 11:21
Bonjour à tous,
Ma question d'aujourd'hui est savoir comment faire pour ajouter un ligne dans mon tableau et la placer dans l'ordre alphabétique avec un userform je vous pose mon code actuel qui ne me le met pas exactement dans l'ordre alphabétique et ne me met pas les contours des lignes avec
Private Sub CommandButton1_Click()
With Sheets("Feuil2")
derlign = .Range("A" & Rows.Count).End(xlUp).Row + 1
.Range("A" & derlign).Value = Me.TextBox1.Value
 
'classement par ordre alphabétique
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=Range("A1"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
End With
 
    With Sheets("Feuil2").Sort
        .SetRange Range("A2:A" & derlign)
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub

Private Sub CommandButton2_Click()

End Sub

Private Sub TextBox1_Change()

End Sub

Private Sub TextBox2_Change()

End Sub
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
3
Merci
Dégourdis-toi un peu

Voilà pour copier avec même format :
Private Sub CommandButton1_Click()

With Sheets("Feuil3")
derlign = .Range("A" & Rows.Count).End(xlUp).Row
.Range("A" & derlign).Copy Destination:=.Range("A" & derlign + 1)
derlign = derlign + 1
.Range("A" & derlign).EntireRow.ClearContents
.Range("A" & derlign).Value =  Me.TextBox1.Value
 
'classement par ordre alphabétique
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=Range("A1"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
End With
 
    With Sheets("Feuil3").Sort
        .SetRange Range("A2:A" & derlign)
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With


End Sub

Voilà.
Pour ta colonne B, je vais te laisser réfléchir et faire, hein ...(facile)
On ne traite sur ce forum qu'une difficulté spécifique et isolée et non la progression d'une appli.
Celle objet de ta demande ayant été résolue : un clic sur tag "réponse acceptée" pour libérer ce sujet.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
3
Merci
Idem pour ton autre discussion, laissée ouverte elle aussi


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
0
Merci
Bonjour,

Tin code de tri fonctionne comme attendu !
Reste à savoir ce que tu lui reproches et qu'elle en est la raison (qui peut être liée au formatage de ta colonne A et à ce que tu sais dans ta textebox (qui, elle, est du string).
Pour le reste (tes contours). C'est évident ! solution : copie la ligne précédente, puis vide-la de son contenu (clearcontents), puis mets-y ta valeur nouvelle.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Commenter la réponse de ucfoutu
Messages postés
12
Date d'inscription
jeudi 19 avril 2012
Dernière intervention
30 mai 2012
0
Merci
Merci d'avoir été si rapide, tu avais raison c'était le formatage de ma colonne A maintenant ça marche nickel par contre comment on copie la ligne précédente et comment faire pour que ce que je saisie dans une autre textbox soit sur la même ligne mais dans une colonne B par exemple.
Je suis vraiment un débutant en vba les codes pour copier et vider les contenus me sont encore inconnus en tout cas merci pour m'avoir aidé à résoudre mon problème.
Commenter la réponse de simoh1313
Messages postés
12
Date d'inscription
jeudi 19 avril 2012
Dernière intervention
30 mai 2012
0
Merci
OK merci je te promets de tout mettre en œuvre pour ne plus faire d'erreur de ce genre merci pour ton temps.
Commenter la réponse de simoh1313

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.