Macro insertion ligne Excel, macro ne suit pa
Résolu/Fermé
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
-
12 janv. 2009 à 10:58
banbiou Messages postés 70 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 4 août 2015 - 6 févr. 2009 à 15:31
banbiou Messages postés 70 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 4 août 2015 - 6 févr. 2009 à 15:31
A voir également:
- Macro insertion ligne Excel, macro ne suit pa
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
- Si et excel - Guide
- Partager photos en ligne - Guide
12 réponses
herod1983
Messages postés
193
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
3 août 2012
5
12 janv. 2009 à 11:16
12 janv. 2009 à 11:16
salut
Je ne vois pas très bien ce que tu veux faire, en gros tu veux insérer une ligne quand il y a une certaine condition laquelle? mais tu veux pouvoir modifié à chaque fois à quelle endroit tu veux l'insérer c'est sa?
Je ne vois pas très bien ce que tu veux faire, en gros tu veux insérer une ligne quand il y a une certaine condition laquelle? mais tu veux pouvoir modifié à chaque fois à quelle endroit tu veux l'insérer c'est sa?
herod1983
Messages postés
193
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
3 août 2012
5
12 janv. 2009 à 11:26
12 janv. 2009 à 11:26
si c'est bien sa je te propose cela:
Il te faudra juste double cliquer sur la ligne concernée pour que cela en insère une.
A mettre dans: Private Sub Worksheet_BeforeDoubleClick
A mettre dans une macro:
Il te faudra juste double cliquer sur la ligne concernée pour que cela en insère une.
A mettre dans: Private Sub Worksheet_BeforeDoubleClick
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Call Macro1(Target) End Sub
A mettre dans une macro:
Sub Macro1(Target) Set i = Target Range("A" & i.Row).Insert End Sub
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
12 janv. 2009 à 14:12
12 janv. 2009 à 14:12
une idée herod1983...?
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
12 janv. 2009 à 11:39
12 janv. 2009 à 11:39
En faite, lorsque je modifie mon Excel (ce qui arrive souvent). Lorsque, par exemple, j'ajoute une ligne en Excel. Ma Macro n'est plus à jour.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
12 janv. 2009 à 16:54
12 janv. 2009 à 16:54
Bonjour,
le plus simple est de nommer la plage concernée (par exemple plage3) et d'utiliser ce nom dans la macro :
Range("plage3").EntireRow.Hidden = False
Le nom d'adaptera tout seul en fonction des ajout/suppression de lignes et tu peux redéfinir la plage en cas d'évolution de ta feuille sans retoucher le code.
eric
le plus simple est de nommer la plage concernée (par exemple plage3) et d'utiliser ce nom dans la macro :
Range("plage3").EntireRow.Hidden = False
Le nom d'adaptera tout seul en fonction des ajout/suppression de lignes et tu peux redéfinir la plage en cas d'évolution de ta feuille sans retoucher le code.
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
12 janv. 2009 à 16:54
12 janv. 2009 à 16:54
Bonjour,
le plus simple est de nommer la plage concernée (par exemple plage3) et d'utiliser ce nom dans la macro :
Range("plage3").EntireRow.Hidden = False
Le nom d'adaptera tout seul en fonction des ajout/suppression de lignes et tu peux redéfinir la plage en cas d'évolution de ta feuille sans retoucher le code.
eric
le plus simple est de nommer la plage concernée (par exemple plage3) et d'utiliser ce nom dans la macro :
Range("plage3").EntireRow.Hidden = False
Le nom d'adaptera tout seul en fonction des ajout/suppression de lignes et tu peux redéfinir la plage en cas d'évolution de ta feuille sans retoucher le code.
eric
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
13 janv. 2009 à 01:10
13 janv. 2009 à 01:10
en gros si je te comprend bien eric:
comme ma macro est associé à un bouton, "bouton3", il me sufirai de dire au début de ma macro:
Range("bouton3").EntireRow.Hidden = False ??? c'est ca?
je peux meme je pense nommer tous mes boutons "bouton3" pour que cette ligne d'instruction ce généralise à toutes mes macro de ce type..?
En tout cas, en attentan des news de ta part, je te remerci et je te dirai si cela marche demain car je vais au dodo...
comme ma macro est associé à un bouton, "bouton3", il me sufirai de dire au début de ma macro:
Range("bouton3").EntireRow.Hidden = False ??? c'est ca?
je peux meme je pense nommer tous mes boutons "bouton3" pour que cette ligne d'instruction ce généralise à toutes mes macro de ce type..?
En tout cas, en attentan des news de ta part, je te remerci et je te dirai si cela marche demain car je vais au dodo...
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
13 janv. 2009 à 07:00
13 janv. 2009 à 07:00
Bonjour,
Non, il faut que tu nommes ta plage sur la feuille.
Sélectionner tes 3 lignes et menu 'insertion / nom / definir...'
eric
Non, il faut que tu nommes ta plage sur la feuille.
Sélectionner tes 3 lignes et menu 'insertion / nom / definir...'
eric
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
13 janv. 2009 à 10:04
13 janv. 2009 à 10:04
slt,
alors j'ai bien essayé ta proposition mais cela n'a pas fait l'effet que j'attandais...lol
pour plus de compréhension, j'envoi un "exemple" de mon .xls
ajoute une ligne supplémentaire au début de ma page, joue avec les macros et tu comprendras tout vite ce que j'ai voulu dire lol.
voila:
http://www.cijoint.fr/cjlink.php?file=cj200901/cijLIu5ISQ.xls
merci d'avance.
alors j'ai bien essayé ta proposition mais cela n'a pas fait l'effet que j'attandais...lol
pour plus de compréhension, j'envoi un "exemple" de mon .xls
ajoute une ligne supplémentaire au début de ma page, joue avec les macros et tu comprendras tout vite ce que j'ai voulu dire lol.
voila:
http://www.cijoint.fr/cjlink.php?file=cj200901/cijLIu5ISQ.xls
merci d'avance.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
>
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
13 janv. 2009 à 23:29
13 janv. 2009 à 23:29
Bonsoir,
ben j'ai modifié et 'joué' comme tu dis et je ne vois pas bien où ça cloche par rapport à ce que tu demandais (?)
Soit tu as mal expliqué, soit je n'ai rien compris, soit tu n'as pas compris mon explication (sommaire...)
Je n'ai modifié que pour les boutons en lignes 29 et 33 :
classeur1.xls
Et si la ligne insérée est entre 30:33 la plage s'aggrandi en 30:34
Mais pour faire plus joli et plus ergonomique utilise le même bouton pour déplier et replier (là celui en 33 ne sert plus à rien)
eric
ben j'ai modifié et 'joué' comme tu dis et je ne vois pas bien où ça cloche par rapport à ce que tu demandais (?)
Soit tu as mal expliqué, soit je n'ai rien compris, soit tu n'as pas compris mon explication (sommaire...)
Je n'ai modifié que pour les boutons en lignes 29 et 33 :
classeur1.xls
Et si la ligne insérée est entre 30:33 la plage s'aggrandi en 30:34
Mais pour faire plus joli et plus ergonomique utilise le même bouton pour déplier et replier (là celui en 33 ne sert plus à rien)
eric
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
>
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
13 janv. 2009 à 23:44
13 janv. 2009 à 23:44
bah voila, j'avais ma utilisé ton explication avec la "plage3"...
j'avais juste mis mes macro dans cette plage.
Et effectivement, ca fait 1 mois que je "joue" avec les macro Excel...
Et un gros merci pour ta trouvail, ton aide et aussi l'ergonomie de mon bouton "2 en 1", j'avais essayé de trouver qque chose mais j'avais pas trouvé...^^
En tout cas un GRAND MERCI.
PS: et si tu es fort en dyndns avec pi3web... je veux bien un coup de main pr configurer mon log. pi3web... lol
j'avais juste mis mes macro dans cette plage.
Et effectivement, ca fait 1 mois que je "joue" avec les macro Excel...
Et un gros merci pour ta trouvail, ton aide et aussi l'ergonomie de mon bouton "2 en 1", j'avais essayé de trouver qque chose mais j'avais pas trouvé...^^
En tout cas un GRAND MERCI.
PS: et si tu es fort en dyndns avec pi3web... je veux bien un coup de main pr configurer mon log. pi3web... lol
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
>
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
14 janv. 2009 à 00:24
14 janv. 2009 à 00:24
Je ne connais pas pi3web mais si c'est pour te faire un serveur FTP avec dyndns tu peux t'inspirer de ça :
FTP sur micro.pdf
Tout est bien expliqué point par point
eric
FTP sur micro.pdf
Tout est bien expliqué point par point
eric
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
>
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
14 janv. 2009 à 08:31
14 janv. 2009 à 08:31
merci eric,
herod1983
Messages postés
193
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
3 août 2012
5
13 janv. 2009 à 10:52
13 janv. 2009 à 10:52
Salut
Désolé pour hier j'ai pas le net a mon boulot, j'ai vue ton .xls effectivement, pour que chaque ligne cachée garde leur numéro de ligne quand tu en ajoute une, il faudrait faire une macro qui déplace tous de +1, mais vu le nombre de ligne cachée que tu as, c'est plutôt ardue.
Alors peut-être si tu prenais le problème d'une autre manière, à ton stade est-il encore possible qu'au lieu d'insérer des lignes, que tu ajoutes tous simplement tes donnés au fur et à mesure.
Désolé pour hier j'ai pas le net a mon boulot, j'ai vue ton .xls effectivement, pour que chaque ligne cachée garde leur numéro de ligne quand tu en ajoute une, il faudrait faire une macro qui déplace tous de +1, mais vu le nombre de ligne cachée que tu as, c'est plutôt ardue.
Alors peut-être si tu prenais le problème d'une autre manière, à ton stade est-il encore possible qu'au lieu d'insérer des lignes, que tu ajoutes tous simplement tes donnés au fur et à mesure.
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
13 janv. 2009 à 14:34
13 janv. 2009 à 14:34
en faite, j'ai ma liste principale d'opérations et lorsque je clic sur le "+" c'est pour avoir le détail (les sous opérations).
ces opérations sont dans un ordre précis. Mais il se peut que j''en ai oubliées une ou deux par ci par là donc rajouter des lignes supplémentaires... tu vois ce que je veux dire ?
merci
ces opérations sont dans un ordre précis. Mais il se peut que j''en ai oubliées une ou deux par ci par là donc rajouter des lignes supplémentaires... tu vois ce que je veux dire ?
merci
herod1983
Messages postés
193
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
3 août 2012
5
13 janv. 2009 à 20:54
13 janv. 2009 à 20:54
Ok je vais me pencher sur le problème je te tiens au courant
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
13 janv. 2009 à 21:30
13 janv. 2009 à 21:30
merci herod
herod1983
Messages postés
193
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
3 août 2012
5
15 janv. 2009 à 16:37
15 janv. 2009 à 16:37
Voila c'est fait
voici le lien http://herod1983.hbg.fr/cijLIu5ISQ.xls
Donc pour garder les mêmes lignes qui se masque et se dévoile quand tu en insère une j'ai procédé de la façon suivante:
- En premier j'ai déjà effacé tes boutons car ce n'était pas des CommandButton et pour effectuer l'évènement Click
c'était plus problématique (tu les trouves dans affichage=>barre d'outil=>boite a outil de contrôle)
- Ensuite j'ai pris les coordonnées ligne du bouton "+", vu qu'ils étaient à chaque fois au-dessus des lignes à démasquer.
En gros j'ai dis si le bouton est sur cette ligne alors les lignes en dessous (en fonction du nombre de ligne que tu veux masquer) se démasque, pareil pour le masquage
il y a une macro pour chaque nombre de ligne à masquer (en l'occurrence pour toi 2,3,5,8,9), si tu veux créer d'autre boutons qui masque un autre nombre de ligne, tu n'aura qu'à copier une macro déjà faite et changer à
+2 +3 ou +4 et mettre +6 pour 6ligne +7 etc.
Je t'ai encore expliquer dans les macro la marche à suivre
Voila j'espère que je bien été explicatif, de toute façon si il y a quelque chose qui cloche tu peux toujours m'en faire part.
voici le lien http://herod1983.hbg.fr/cijLIu5ISQ.xls
Donc pour garder les mêmes lignes qui se masque et se dévoile quand tu en insère une j'ai procédé de la façon suivante:
- En premier j'ai déjà effacé tes boutons car ce n'était pas des CommandButton et pour effectuer l'évènement Click
c'était plus problématique (tu les trouves dans affichage=>barre d'outil=>boite a outil de contrôle)
- Ensuite j'ai pris les coordonnées ligne du bouton "+", vu qu'ils étaient à chaque fois au-dessus des lignes à démasquer.
En gros j'ai dis si le bouton est sur cette ligne alors les lignes en dessous (en fonction du nombre de ligne que tu veux masquer) se démasque, pareil pour le masquage
il y a une macro pour chaque nombre de ligne à masquer (en l'occurrence pour toi 2,3,5,8,9), si tu veux créer d'autre boutons qui masque un autre nombre de ligne, tu n'aura qu'à copier une macro déjà faite et changer à
+2 +3 ou +4 et mettre +6 pour 6ligne +7 etc.
Je t'ai encore expliquer dans les macro la marche à suivre
Voila j'espère que je bien été explicatif, de toute façon si il y a quelque chose qui cloche tu peux toujours m'en faire part.
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
15 janv. 2009 à 19:47
15 janv. 2009 à 19:47
merci herod, tu as aussi réussi comme eric.
il y a plus de programmation dans ta méthode par rapport a eric.
j'aime bien les deux... ^^
en tout cas j'ai encore bcp de progres a faire...
tu sais pas où je peux apprendre des "formules types" : celle a savoir obligatoirement...lol
merci en tout cas.
c'est bien gentil de ta part.
il y a plus de programmation dans ta méthode par rapport a eric.
j'aime bien les deux... ^^
en tout cas j'ai encore bcp de progres a faire...
tu sais pas où je peux apprendre des "formules types" : celle a savoir obligatoirement...lol
merci en tout cas.
c'est bien gentil de ta part.
herod1983
Messages postés
193
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
3 août 2012
5
15 janv. 2009 à 22:36
15 janv. 2009 à 22:36
Il y a plus de code tous simplement au cas ou si il y a un problème le code est plus robuste.
Sinon pour des formules type il y a le tuto:
de développez.com
de info3000.com
de vbfrance.com
et de cathyastuce.com
Tous mon pas mal aidé à mes débuts j'ai aussi acheter le livre ExcelVBA pour les nuls qui est vraiment très bien pour les débutants.
Ca fait 1 an que je m'y suis mis et je commence juste à effleurer la partie émergé de l'iceberg lol
En tous cas le tous pour apprendre vite c'est de créer programme sur programme, pour acquérir la syntaxe du code, d'être patient c'est le moins qu'on puisse dire et surtout vive le net et les forums sans cela sa prendrait deux fois plus de temps.
malgré tous quand tu commence à connaître tu t'aperçois de la montagne de chose que tu peux faire et la tu kiffe.
Voila Bonne Continuation
a+
Sinon pour des formules type il y a le tuto:
de développez.com
de info3000.com
de vbfrance.com
et de cathyastuce.com
Tous mon pas mal aidé à mes débuts j'ai aussi acheter le livre ExcelVBA pour les nuls qui est vraiment très bien pour les débutants.
Ca fait 1 an que je m'y suis mis et je commence juste à effleurer la partie émergé de l'iceberg lol
En tous cas le tous pour apprendre vite c'est de créer programme sur programme, pour acquérir la syntaxe du code, d'être patient c'est le moins qu'on puisse dire et surtout vive le net et les forums sans cela sa prendrait deux fois plus de temps.
malgré tous quand tu commence à connaître tu t'aperçois de la montagne de chose que tu peux faire et la tu kiffe.
Voila Bonne Continuation
a+
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
16 janv. 2009 à 18:12
16 janv. 2009 à 18:12
merci mec, tu as bien raison...
a+ pour un prochain cour de VBA...
a+ pour un prochain cour de VBA...
banbiou
Messages postés
70
Date d'inscription
mercredi 6 février 2008
Statut
Membre
Dernière intervention
4 août 2015
32
12 janv. 2009 à 12:54
12 janv. 2009 à 12:54
alors encore plus d'explications...lol
à la ligne 30 j'ai un bouton "3". A ce bouton j'ai accroché une macro pour que celle ci démasque trois lignes :
Sub macro3()
With bouton3 = Checked
Rows("30:33").EntireRow.Hidden = False
End With
End Sub
mais maintenant je veux ajouter une ligne supplémentaire au debut de ma page une ligne 0.
Hors, si j'ajoute une ligne, ma macro va etre décalé elle aussi d'une ligne et ne va pas demasquer la ligne 30, 31, 32, 33 mais les lignes 30+1, 31+1, 32+1, 33+1.... (décalage d'une ligne !!! )
je rajoute souvent des ligne supplementaire, cellule ou colonne... et je ne veux pas changer ma macro a chaque fois, surtout qu'actuellement à la moitier de mon Excel, je suis à une 20aine de macro de ce type....
Voila mon gros souci, y a t'il une fonction qui permettre de suivre mes macro par rapport aux ligne colonne ou cellule que je rajoute..?
Merci
à la ligne 30 j'ai un bouton "3". A ce bouton j'ai accroché une macro pour que celle ci démasque trois lignes :
Sub macro3()
With bouton3 = Checked
Rows("30:33").EntireRow.Hidden = False
End With
End Sub
mais maintenant je veux ajouter une ligne supplémentaire au debut de ma page une ligne 0.
Hors, si j'ajoute une ligne, ma macro va etre décalé elle aussi d'une ligne et ne va pas demasquer la ligne 30, 31, 32, 33 mais les lignes 30+1, 31+1, 32+1, 33+1.... (décalage d'une ligne !!! )
je rajoute souvent des ligne supplementaire, cellule ou colonne... et je ne veux pas changer ma macro a chaque fois, surtout qu'actuellement à la moitier de mon Excel, je suis à une 20aine de macro de ce type....
Voila mon gros souci, y a t'il une fonction qui permettre de suivre mes macro par rapport aux ligne colonne ou cellule que je rajoute..?
Merci