Posez votre question Signaler

[VBA Excel] Macro quand ajout ou supprime ligne [Résolu]

marieC 10Messages postés 1 juin 2005Date d'inscription - Dernière réponse le 30 mai 2008 à 15:27
Je veux exécuter du code VBA quand on ajoute une ligne dans un fichier Excel et quand on supprime une ligne du fichier Excel.

En fait pour la suppression, je ne veux pas que la ligne soit supprimée mais je veux que l'intérieur des cellules apparaissent en rouge.

Quelqu'un peut m'aider.

Merci
Lire la suite 

[VBA Excel] Macro quand ajout ou supprime ligne »

19 réponses
Réponse
+4
moins plus
En fait il y aura plusieurs utilisateurs qui vont utiliser ce fichier. Mais j'ai peur qu'un utilisateur supprime une ligne par inadvertance . C'est pour ça que je veux mettre en rouge les lignes à supprimer. Ensuite j'ai une macro qui enregistre toute les lignes dans une table oracles, qui supprime ce qui doit être supprimé et qui modifie ce qui doit l'être. La solution des 2 Macros serait pas mal mais comment empecher de supprimer une ligne ou d'en insérer une en passant par les fonction standard d'excel (click droit puis supprimer )???

Merci de votre aide.
Armojax - 2 jun 2005 à 09:08
Hello,

Les autres "utilisateurs" n'ont pas le droit d'insérer ni de supprimer des lignes : OK.
Question : ont-ils le droit de faire d'autres modifications, ou bien ne peuvent-ils que consulter ? Si oui, il suffirait de leur fournir l'accès en lecture seule.
Ajouter un commentaire
Réponse
+0
moins plus
;-)

Tu peut essayer de gérer les événements "BeforeRightClick" ou "Change" de la feuille, mais bonjour à développer...

;-)
Ajouter un commentaire
Réponse
+0
moins plus
Hello marieC,

Et si tu prenais le problème à l'envers ? Tu construis 2 macros VBA :
- une pour insérer,
- une pour supprimer.

Tu y mets ce que tu veux, et tu les appelles par bouton... ou une touche... ou dans le menu Excel...

Non ?
WhiteFang - 1 jun 2005 à 18:50
;-)

Moi, dans cette histoire, c'est le "on" qui me gène, cela suppose n'importe quel utilisateur, et dans ce cas, faut verrouiller l'appli..

;-)

Dans ta solution, très bien, mais uniquement pour une utilisation perso...

;-)
Armojax - 1 jun 2005 à 21:17
Tu as raison.
Effectivement, je me plaçais dans un contexte d'utilisation perso.

Si ce n'est pas le cas, et si seuls certains ont le droit à certaines fonctionnalités, c'est assez facile de verrouiller...
Ajouter un commentaire
Réponse
+0
moins plus
;-)

Le système de lecture seule, c'est vrai, est imparable ;-)

Il y a aussi la possiblité de virer les commandes dans l'interface, mais cela peut s'avérer très lourd question maintenance et dev, y compris en test, car quand tu vires des commandes via le code, il faut prévoir une autre procédure qui les remets, en cas de plantage... Bref...

Une solution envisageable serait (?), dans l'événement open du workbook, de copier la feuille, passer l'originale en visible=false et la copie en visible=true, d'analyser le nombre, via LastCell, de lignes/colonnes de l'original, puis de comparer, dans les événements de fermeture (appli/classeur....), l'original et la copie... Ensuite, rétablir -ou n'importe quoi d'autre- en fonction des différences... ?

;-)
Armojax - 2 jun 2005 à 10:25
Eh bien il suffit d'appeler, avec les mêmes touches de raccourci, une macro ... qui ne fait rien.
Les raccourcis des macros perso prennent le pas sur les raccourcis de l'application.
C'est pour ça qu'on conseille en général d'utiliser CRTL + MAJ + touche pour éviter les conflits.
WhiteFang - 2 jun 2005 à 10:38
;-)

Mais bon dieu, mais c'est sûr !

C'était tellement simple et évident et devant mon nez que j'ai rien vu...

Sub/End sub !! Quel con je fais, mais bien sûr.. ;-) Le boulet !! ;-))))
Armojax - 2 jun 2005 à 11:06
Bois un coup à ma santé, tu verras, ça va passer !
Ajouter un commentaire
Réponse
+0
moins plus
MErci pour toute vos réponses. Je vais garder ce que vous m'avez envoyer. Peut être que ça m'aidera pour un autre problème. Par contre pour mon fichier excel actuel j'ai peur de développer une usine à gaz. Je vais donc rester simple. Il n'y a que 2 utilisateurs qui l'utiliseront, Ce sera à eux de faire attention.

Merci beaucoup pour votre aide.
Ajouter un commentaire
Réponse
+0
moins plus
Juste pour infos, Comment créé les touches de raccourci vers une macro ?

Merci
Armojax - 6 jun 2005 à 11:08
Bonjour marieC,

Pour une macro déjà créée tu fais, dans le menu Excel :
Outils/Macro/Macros...

Dans la boite de dialogue qui s'affiche, sélectionner la macro, s'il y en a plusieurs, puis cliquer sur le bouton "Options".
Entrer la lettre choisie pour l'appel de la macro.

La macro sera appelée avec CTRL + la touche choisie.
Si on ne veut pas de conflit avec les raccourcis standard (p. ex. CTRL + c pour copier), il vaut mieux entrer une lettre majuscule.

Ajx.
Ajouter un commentaire
Réponse
+0
moins plus
Merci à tous pour votre aide
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Je sais pas si c'est ici que je dois expliquer mon probleme alors dsl si je me suis trompé... J'ai un tableau récapitulatif du moi de janvier, février, mars j'attend celui des autres mois mais on me demande de préparer le tableau récapitulatif annuel c'est a dire que je dois trouver une formule qui me permettra que lorsque j'ajouterai les tableaux des autres moi le tableau annuel se complete au fur et a mesure... On ma dit que pour ca il faut utiliser une macro mais je ne sais pas comment faire...

Si quelqu'un a compris merci de m'aider
Ajouter un commentaire
Réponse
+0
moins plus
J'ai créé une ongue liste déroulante mais je ne peux pas la formater alors je voudrai faire une macro avec ma liste déroulante pour pouvoir la formater et l'intégrer dans mon tableau Merci
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour à tous et à toutes
Je voudrai savoir comment faire pour utiliser des valeurs d'un de mes fichiers excel pour qu'il les affiche sur ma feuille
Je m'explique
j' ai un tableau excel avec 7 colonnes et 86 lignes les valeurs que je voudrai utiliser commence ligne 2
sur mon form vb6 il y a un combobox où je voudrai mettre ma colonne1 pour le choix de titre (par exempler)et 6 zones de texte ou je voudrai mettre les colonnes restantes(chiffres)Les valeur qui vont apparaitre serviront par la suite à effectuer des calculs

mais je sais pas comment faire pourriez vous m'aider svp.
merci
Ajouter un commentaire
Ce document intitulé « [VBA Excel] Macro quand ajout ou supprime ligne » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook