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

kaki31

XLDnaute Occasionnel
Bonsoir;

je viens de trouver ce code pour le tri a la saisie qui est super,et je voudrais savoir s'il est possible d'incorporer quelques lignes pour la majuscule sauf pour la colonne D et la colonne G.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 Then
nom = Target
[A2:C1000].Sort key1:=[A2]
[A:A].Find(what:=nom).Select
End If
End Sub


Merci 🙂
 
Re : Majuscule et tri

Bonjour,

Oui, car comme indiqué dans l'Edit de mon post #4 elles sont inutiles ici.
Ma macro entre un tableau sur au moins 7 cellules => Target.Count >= 7.
A+

@job75 🙂 : pour ma version c'est non; comme pour pierrejean 🙂, certainement, mon 2010 coince !

Il me semble qu'avec :
Code:
[A2:G2].Resize(h) = tablo
les cellules de la colonne A changent, tableau ou pas, donc l'appel récursif se produit et c'est le clash pour certains 😡!

Il me faudra, qu'en cette période de voeux, souhaiter qu'avec 2012 tout se passe bien pour tous 😉.

Une autre proposition : traiter La cellule au fur et à mesure (dès le départ)
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim n As String, Dl As Long, Dc As Long
  If Target.Count > 1 Or Target.Row = 1 Then Exit Sub
  n = Target
  Dl = Cells(Rows.Count, 1).End(xlUp).Row
  Dc = Cells(Columns.Count).End(xlToLeft).Column
  Application.EnableEvents = False
  If Target.Column <> 4 And Target.Column <> 7 Then Target = UCase(Target)
  If Target.Column = 1 Then
    Range(Cells(2, 1), Cells(Dl, Dc)).Sort KEY1:=Range("A2")
    [A:A].Find(n).Select
  Else
    Range("A" & Target.Row).Select 'ou Target.select ou ...
  End If
  Application.EnableEvents = True
End Sub
 

Pièces jointes

Re : Majuscule et tri

Re (même pour les voeux à tous),

J'y avais pensé mais, dans ce cas autant pour nous, nous perdons le bénéfice de l'action unique, c'est-à-dire que pour avoir le autres colonnes en majuscules, il faut soit commencer par les remplir soit relancer la macro "Majuscules".

La variable booléenne "EnableEvents" doit être vraiment bien maitrisée mais ne doit pas poser de problème pour un utilisateur averti et tu as raison de bannir les utilisations abusives.
 
- 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
9
Affichages
358
Réponses
4
Affichages
342
Réponses
2
Affichages
287
Réponses
1
Affichages
392
Retour