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

XL 2010 code VBA pour trier une colonne de mon tableau

  • Initiateur de la discussion Initiateur de la discussion Michelrib
  • 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 !

M

Michelrib

Guest
Sub ajouterAnnuaire()
'
' ajouterAnnuaire Macro
'
Sheets("ANNUAIRE").Select
Rows("3:3").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A3").Select
Sheets("FORMULAIRE").Select
Range("F7").Select
Selection.Copy
Sheets("ANNUAIRE").Select
ActiveSheet.Paste
Range("B3").Select
Sheets("FORMULAIRE").Select
Range("I7").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ANNUAIRE").Select
ActiveSheet.Paste
Range("C3").Select
Sheets("FORMULAIRE").Select
Range("F10").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ANNUAIRE").Select
ActiveSheet.Paste
Range("D3").Select
Sheets("FORMULAIRE").Select
Range("I10").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ANNUAIRE").Select
ActiveSheet.Paste
Range("E3").Select
Sheets("FORMULAIRE").Select
Range("F13").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ANNUAIRE").Select
ActiveSheet.Paste
Range("F3").Select
Sheets("FORMULAIRE").Select
Range("I13").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ANNUAIRE").Select
ActiveSheet.Paste
Sheets("FORMULAIRE").Select
Range("F16").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ANNUAIRE").Select
Range("G3").Select
ActiveSheet.Paste
Sheets("FORMULAIRE").Select
Range("F16,F13,F10,F7,I7,I10,I13").Select
Range("I13").Activate
Application.CutCopyMode = False
Selection.ClearContents
Range("F7").Select
Sheets("ANNUAIRE").Select
Range("A3:G3").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Sheets("FORMULAIRE").Select
ActiveWindow.SmallScroll Down:=3
'trier par ordre alphabétique

End Sub
 
Bonjour et bonne année @Michelrib 🙂 (et à @danielco aussi 😉)

Le titre d'une discussion n'est pas le corps du message.
Le titre doit indiquer et évoquer en quelques mots le sujet de la question.

C'est dans le corps du message qu'on fait sa prose, pas dans le titre.

Il est encore temps de modifier votre message en raccourcissant drastiquement le titre de la discussion pour indiquer le détail de la question dans le corps de votre message. Merci 🙂.
 
Re @Michelrib,

Franchement, nous fournir un petit fichier exemple aurait été apprécié.
Essayez ce code :
VB:
Sub ajouterAnnuaire()
Dim FormulR As Worksheet, derlig As Long
   Set FormulR = Sheets("FORMULAIRE")
   With Sheets("annuaire")
      .Rows("3:3").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
      FormulR.Range("f7").Copy .Range("a3")
      FormulR.Range("i7").Copy .Range("b3")
      FormulR.Range("f10").Copy .Range("c3")
      FormulR.Range("i10").Copy .Range("d3")
      FormulR.Range("f13").Copy .Range("e3")
      FormulR.Range("i13").Copy .Range("f3")
      FormulR.Range("f16").Copy .Range("g3")
      FormulR.Range("F16,F13,F10,F7,I7,I10,I13").ClearContents
      .Range("A3:G3").Borders.LineStyle = xlLineStyleNone
      .Range("A3:G3").Borders.LineStyle = xlContinuous
      derlig = .Cells(.Rows.Count, "a").End(xlUp).Row
      .Range("a3:g" & derlig).Sort key1:=.Range("a3"), order1:=xlAscending, MatchCase:=False, Header:=xlNo
   End With
End Sub
 
Dernière édition:
 
désolé de répondre si tard, en fait j'ai refait une macro pour ce bout de code et je l'ai rajouté à ma macro principale, et ça marche. Merci de votre aide
cordialement
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
14
Affichages
464
Réponses
2
Affichages
749
Réponses
5
Affichages
675
Réponses
3
Affichages
861
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…