![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: avril 2005
Messages: 5
|
Bonjour,
je fais actuellement une macro (enregistrement direct) car je ne connais pas le Visual Basic. J'ai un tableau dans lequel une colonne me permet d'identifier la mise à jour de certains fichiers, et j'y inscris «OK » lorsque la ligne est terminée. Je fais donc un filtre sur OK, je copie mes lignes, j'ouvre ma deuxième feuille, et là je copie. Mon problème c'est qu'il copie toujours au même endroit. Pourtant dans ma macro je lui demande bien d'aller à la dernière ligne avec la combinaison de touches Ctrl + touche vers le bas, puis de nouveau touche vers le bas pour me positionner sur la ligne vierge. Et systématiquement cela se remet en début de tableau. Quelqu'un peut-il m'aider ? j'espère que je me suis bien expliqué. Merci d'avance |
|
|
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) | |
|
XLDnaute Junior
Date d'inscription: septembre 2006
Messages: 88
|
Citation:
|
|
|
|
|
|
|
#3 (permalink) |
|
XLDnaute Occasionel
|
Salut V_Faure !
La macro ne comprend pas les actions simultanées de touches. Si tu veux copier quelquechose à la suite d'une autre, il te faut trouver la dernière ligne "Occupée" et pour ce, il y a une technique. Range("A65536").end(xlup).Row Te donnera le N° de la dernière ligne de ton tableau. Ainsi, tu pourras dire à ta macro de copier tes nouvelles données une ligne en dessous en faisant un décalage (Offset) Range("A65536").end(xlup).Offset(1,0).Activate Et voilà, tu feras ton Paste là. Maintenant, si tu a déclaré une variable auparavant pour connaître le numéro de cette même ligne, cela pourra donner : Range("A65536").end(xlup).row + 1 @ +++ ChrisOne
__________________
J'ai confiance en tout le monde...Ce dont je me méfie, c'est du diable qui sommeille en chacun de nous ! |
|
|
|
|
|
#4 (permalink) | |
|
XLDnaute Nouveau
Date d'inscription: avril 2005
Messages: 5
|
Citation:
|
|
|
|
|
|
|
#5 (permalink) | |
|
XLDnaute Nouveau
Date d'inscription: avril 2005
Messages: 5
|
Citation:
Merci pour ces explications, je comprends un tout petit peu ce que tu essaies de m'expliquer, mais ne connaissant pas Visual basic, je fais donc la macro en enregistrant au fur et à mesure les étapes manuelles. Par exemple pour supprimer une ligne : sélection de la ligne, éditions, supprimer la ligne... Etc. etc. tout se passe bien jusqu'à la sélection des lignes, du chargement de la nouvelle page, mais la en manuelle je sais aller à la dernière ligne (CTRL+FIN), mais aller en dessous, je ne sais pas, j'appuie une fois sur la touche flèche vers le bas. Mais lorsque j'envoie la macro, tout se passe bien sauf que sur le nouveau fichier ou la nouvelle page, mon tableau s'il est déjà présent est écrasé, il est remplacé systématiquement par la dernière manipulation. |
|
|
|
|
|
|
#6 (permalink) |
|
XLDnaute Occasionel
Date d'inscription: juillet 2005
Localisation: Arles
Version Excel : Excel 2003 (PC)
Messages: 460
|
Bonsoir à tous ,
Si j'ai compris? Regarde le fichier joint,qui transfére la ligne quant tu la pointe dans la colonne (k). @+ Yves |
|
|
|
|
|
#7 (permalink) | |
|
XLDnaute Nouveau
Date d'inscription: avril 2005
Messages: 5
|
Citation:
Merci, excuse-moi de t'embêter, mais il faudrait que tu m'expliques le dérouler de cette macro. Effectivement lorsque l'on marque le pointeur, cela transfère bien la ligne mais pas le pointeur. Et il faudrait pouvoir supprimer la ligne pointée du premier tableau. Surtout comment puis-je en refaire cette macro par un enregistrement classique. Que je comprendrais mieux. À plus V. |
|
|
|
|
|
|
#8 (permalink) |
|
XLDnaute Occasionel
Date d'inscription: juillet 2005
Localisation: Arles
Version Excel : Excel 2003 (PC)
Messages: 460
|
Bonjour V_faure,
Je joint un autre fichier qui fait ce que tu demande,la macro est commentée. Cette Macro ne peux ce faire par l'enregistreur automatique de macro Essaye de la suivre. Je revient en fin d'aprés_midi,hésite pas si tu as dautres questions @+ Yves Tenir compte de la remarque de Robert fil ci-dessous et changer la ligne. Dernière modification par ziopizza 06/11/2006 à 16h08. |
|
|
|
|
|
#9 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Localisation: Sète
Version Excel : Excel 2003 (PC)
Messages: 2 810
|
Bonjour le fil, bonjour le forum,
En regardant le fichier de Ziopizza, je ne comprenais pas le fonctionnement et je me suis rendu compte d'une petite erreur dans le code : lig = Target.Row se semble plus juste que lig = ActiveCell.Row. |
|
|
|
|
|
#10 (permalink) |
|
XLDnaute Occasionel
Date d'inscription: juillet 2005
Localisation: Arles
Version Excel : Excel 2003 (PC)
Messages: 460
|
Bonjour Robert,
Grâce à toi je ne ferai plus cette erreur qui chez moi n’ étais pas une erreur dans les options d'excel je fais déplacer le curseur vers la droite,après validation,ce qui fait que pour moi lig = Target.Row est identique lig = ActiveCell.Row . Merci à toi Salut Yves Dernière modification par ziopizza 06/11/2006 à 15h57. |
|
|
|
|
|
#11 (permalink) | |
|
XLDnaute Nouveau
Date d'inscription: avril 2005
Messages: 5
|
Citation:
merci beaucoup, les commentaires sur la macro sont très explicites, je pense avoir compris, je vais tenter de me la reproduire tout seul. Si j'ai un souci je te recontacterais si tu le permet pour que tu m'expliques. À plus v. |
|
|
|
|
|
| ANNONCES | ||
![]() |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| Reprendre la dernière ligne du tableau pour chaque personnes quand ajout d'info. | stefchenko | Forum Excel Downloads - Archives | 4 | 30/11/2004 14h18 |
| Aller à la dernière ligne du tableau avec une macro | Loutsky | Forum Excel Downloads - Archives | 2 | 07/10/2004 14h49 |
| Effacer le contenu de la derniére ligne d'un tableau | Michel | Forum Excel Downloads - Archives | 5 | 27/07/2004 11h40 |
| Aller à la dernière ligne du tableau | nicole | Forum Excel Downloads - Archives | 2 | 14/06/2004 14h52 |
| derniere ligne d'un tableau | jef | Forum Excel Downloads - Archives | 4 | 16/08/2003 10h15 |