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

XL 2013 Erreur compilation (résolu)

Cougar

XLDnaute Impliqué
Bonjour le forum,

Le code suivant (voir fichier joint) sert à trier en ordre croissant en fonction de la colonne G ou cacher les lignes si la colonne G contient un X.

Le souci est que j'ai une erreur de compilation (Instructions et étiquettes incorrectes entre Select Case et le premier Case).

Comment corriger ce problème ?

Merci
 

Pièces jointes

  • Test 1.xlsm
    9.2 MB · Affichages: 21

Roland_M

XLDnaute Barbatruc
bonjour,

tu as oublié Case ?

exp

Select Case Target.Address ' <<<<<<
Case "$g$100": ' <<<<< à toi de voir l'adresse ok pour effectuer le code qui suit !?
ActiveWorkbook.Worksheets("Plan").AutoFilter.Sort.SortFields.Clear
...
...

voir si autre Case ? pour les codes qui suivent si ce n'est pas la même adresse concernée !?


Select Case Target.Address 'ceci est l'adresse de la cellule
Case "$G$100" signifie que si c'est cette cellule alors ok !
code ...
Case "$G300" si cette autre adresse alors ok !
code ...

end select
 

Roland_M

XLDnaute Barbatruc
re

tu as un problème avec ta feuille ! car 9 Mo sans rien c'est anormal !?
j'ai supprimé les colonnes et lignes hors du champ de données
après enregistrement il ne fait plus que 16 ko
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
re

alors dans ce cas pas besoin de select case, pourquoi veux tu l'utiliser !?
ceci suffit !
Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("g2:g10000")) Is Nothing Then Exit Sub
'suite ok
ActiveWorkbook.Worksheets("Plan").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Plan").AutoFilter.Sort.SortFields.Add _
               Key:=Range("G1:G10000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortTextAsNumbers
With ActiveWorkbook.Worksheets("Plan").AutoFilter.Sort
    .Header = xlYes
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
End With
ActiveSheet.Range("$A$1:$H$10000").AutoFilter Field:=7
ActiveSheet.Range("$A$1:$H$10000").AutoFilter Field:=7, Operator:= _
xlFilterValues, Criteria2:=Array(0, "9/1/2018")
End Sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…