Déplacement automatique d'une ligne selon valeur

Résolu
Ascalon - 9 sept. 2023 à 10:48
Le Pingou Messages postés 12120 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 31 juillet 2024 - 18 sept. 2023 à 15:48

Bonjour,

Je renseigne un fichier Excel d'électroménagers chaque jour.

Les nouvelles lignes que j'insère, se situe tout en bas de mon tableau, et j'aimerais qu'elle se déplace automatiquement à tel ou tel ligne dans mon tableau en fonction d'une valeur entrée, notamment dans mon cas la marque de l'électroménager.

Par exemple, mes four Electrolux se situe entre les lignes 3 et 23 et la marque "Electrolux" est renseignée en colonne B. A l'insertion d'une nouvelle ligne en 66, je renseigne "Electrolux" en colonne B. La ligne se déplace alors automatiquement en ligne 24.

Merci d'avance pour votre aide et vos conseils :)

Cordialement,

A voir également:

4 réponses

NonoM45 Messages postés 285 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 31 juillet 2024
9 sept. 2023 à 11:12

Bonjour Ascalon,

Il suffit de faire un tri à chaque ajout de nouvelle ligne, non ?

On peut lancer ce tri en VBA

A+

1

Bonjour NonoM45,

En effet un tri via les filtres fonctionne, mais cela suppose que j'ai une manipulation à effectuer.

Je souhaite rendre cela automatique au moment où la marque est renseignée.

S'il s'agit de VBA, auriez-vous un code à me proposer ?

Merci par avance :)

0
Raymond PENTIER Messages postés 58558 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 30 juillet 2024 17 157
9 sept. 2023 à 15:38

Bonjour Ascalon.

"cela suppose que j'ai une manipulation à effectuer" :

Un clic sur un bouton, ce n'est quand même pas épuisant !


1

Monsieur Pentier,

Croyez-moi, je ne suis pas flemmard et je suis entièrement d'accord avec vous, mais là n'est pas la question.

Excel est un logiciel intelligent avec la qualité de pouvoir automatiser un certain nombre de choses.

Ma tâche étant régulière et quotidienne, cela représente pour moi un réel gain de temps.

Bien cordialement,

0
Le Pingou Messages postés 12120 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 31 juillet 2024 1 442
Modifié le 9 sept. 2023 à 18:51

Bonjour,

 S'il s'agit de VBA, auriez-vous un code à me proposer ?

En utilisant l'enregistrement de macro, vous faites une fois le travail et ensuite vous utiliserai la macro qui a été enregistré.

Exemple ; Trier la base "A1:K200" sur la colonne B

Sub Macro2()
'
'Trier la base "A1:K200" sur la colonne B
    Range("A1:K200").Select
    Range("K1").Activate
    ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add2 Key:=Range("B2:B166" _
        ), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Feuil1").Sort
        .SetRange Range("A1:J166")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A2").Select
End Sub

0

Bonjour Le Pingou,

Merci pour votre réponse.

A partir de vos éléments, j'ai réussi à résoudre mon besoin.

Merci beaucoup :)

0
Le Pingou Messages postés 12120 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 31 juillet 2024 1 442
18 sept. 2023 à 15:48

Merci, penser de marquer comme résolu si c'est le cas.


0