Effacer toutes les flêches

Résolu
Signaler
Messages postés
113
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
28 août 2007
-
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
-
Bonjour,
sur une feuille excel pour l'utilité d'un projet je dessine pas mal de flêches (jusqu'à plus de 50)
et donc j'aimerais créer une macro qui m'efface toutes mes flêches d'un coup (mes juste les fléches).
J'ai vu qu'avec l'enregistreur de macro effacer une ligne c'est ce code:

Sub Macro1()


    ActiveSheet.Shapes("Line 160").Select
    Selection.Delete
   
End Sub

Mais pourrait-on remplacer le Line 160 par quelquechose comme AllLines ou quelquechose de se genre.
Voilà je vous remercie d'avance et espère que quelqu'un pourra m'aider

Je viens de découvrir le bonheur de programmer et le VB me le rend bien

8 réponses

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Ajoute un bouton sur ta feuille puis ce code:

Private Sub CommandButton1_Click()
Dim Li As Line
   For Each Li In ActiveSheet.Lines
       Call Li.Delete
   Next
   Set Li = Nothing
End Sub , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
toujours la meme chose... les questions varient très peu ces temps ci

plusieurs facons de faire...

for i = 1 To 160
   ActiveSheet.Shapes("Line " & i).Delete
next i

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Essaies peu etre ceci alors

Private Sub Annuler_Click()
  ActiveSheet.Lines(ActiveSheet.Lines.Count).Delete
End Sub , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
113
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
28 août 2007

Merci beaucoup ca marche parfaitement.

PS: Désolé de ne pas être très original...mais je débute .....

Je viens de découvrir le bonheur de programmer et le VB me le rend bien
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Si tu estimes que ton problème est résolu, appuie sur le bouton réponse acceptée sur le ou les post qui t'on aidé à le résoudre.

De cette manière si d'autres ont le même problème, ils verrons plus rapidement comment s'en sortir.

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
113
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
28 août 2007

REbonjour,
maintenant j'ai un autre souci, c'est que j'aimerais créer un bouton Annuler qui efface la dernière flêche, puis si je reclique l'avant dernière ect...
quelquechose du genre

Private Sub Annuler_Click()
Dim Li As Line
   For Each Li In ActiveSheet.Lines
       Call "LastLi".Delete
   Next
   Set Li = Nothing
End Sub

Je viens de découvrir le bonheur de programmer et le VB me le rend bien
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Re,
Non la j'ai pas compris ce que tu souhaitais faire, désolé.

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
113
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
28 août 2007

Je vais essayer d'être plus précis : j'ai un petit programme qui me permet de créer des flêches les une derrière, les autres (comme une chaîne de flêche) et j'aimerais si jamais je me trompe sur la dernière flêche tracée, effacée celle-ci et ensuite continuer ma châine.

Car, avec ma méthode de dessin des fl^che, je ne peu pas utiliser le undo de la barre des tâche car l'action de dessiner les flêches ni est pas, donc j'aimerais créer une macro qui m'effece juste le dernière qui viens d'être créer.
Je viens de découvrir le bonheur de programmer et le VB me le rend bien