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

Réactivation suite à suppression

bonite

XLDnaute Nouveau
Car le CTRL-Z permet de réactiver des lignes qui ont été préalablement supprimé par contre je ne vois pas ce que vient faire le CTRL-Y qui lui rétablit une action.
For i = Sheets("Contacts").Range("A" & finFeuilleContact).End(xlUp).Row To 1 Step -1
If Sheets("Contacts").Cells(i, 19) = Int(lstEvt.Value) Then
' Sheets("Contacts").Rows(i).Delete
End If
Next i
Je voudrais pouvoir réactiver les lignes qui ont été supprimées.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Les actions effectuées par macros ne peuvent pas être annulées, à moins de prévoir une macro d'annulation, à annoncer en fin d'exécution par Application.OnUndo
Il faudrait le faire plus souvent mais en pratique on ne le fait jamais parce que ça a tendance à toujours être extrêmement compliqué à mettre en place. Il faudrait noter dans une collection les valeurs des cellules des lignes supprimées et leurs numéros de ligne afin de pouvoir tout refaire en sens inverse.
À moins de noter dans un tableau Private du module l'ensemble des valeurs de toute la plage, et au Undo simplement reverser le tout.
 
Dernière édition:

bonite

XLDnaute Nouveau
Merci, cela confirme ce que je pensais. Je sais qu'il est possible de passer par une feuille spécifique puis rebasculer les lignes préalablement supprimées pour un retour arrière. Cette procédure est évidemment lourde pour des traitements ponctuels.
Je me remets à programmer après une retraite de 5 années précédée de 35 ans d'informatique essentiellement sur gros système. Les dernières années je faisais de la micro mais pas ou très peu de VBA.
Le temps est-il beau dans votre région dont je suis originaire.
 

Dranreb

XLDnaute Barbatruc
Oui, étonnamment exceptionnel, ce temps, à cette époque.
Un conseil: travaillez le plus possible avec des tableaux dynamiques en mémoire et peu avec les méthodes Range, Cells et autres Evaluate (sauf pour charger et décharger les tableaux entiers en une seule instruction). Vous devez connaitre sûrement vu qu'il n'y a que ça dans les autres langages de programmation.
 
Dernière édition:

Discussions similaires

Réponses
14
Affichages
452
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…