[Macro Excel]

Résolu
muadch Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
 frenchy -
Bonjour,
je suis entrain de me prendre la tête avec une petite macro.
apres avoir séléctionné une ligne j'aimerais que ma macro insert une nouvelle ligne puis copie quelques cellules pour les coller dans la ligne nouvelle.

techniquement ca doit resembler à ca :

Rows("10:10").Select
Selection.Insert Shift:=xlDown
Range("O3:AB3").Select
Selection.Copy
Range("A10").Select
ActiveSheet.Paste

ce que je cherche est une commande qui pourrait me renvoyer le nom de la ligne séléctionné initialement. La ligne de mon "code" 1 et 5 sont variable. la ligne 1 je peux la remplacer en choissisant la ligne avant de lancer la macro. le problème est de coller les cellules au bon endroit apres les avoir copié.

je suis ouvert à tout proposition ou idée
merci et bonne soirée
A voir également:

4 réponses

sncf Messages postés 121 Date d'inscription   Statut Membre Dernière intervention   14
 
Bonjour

Peux tu etre plus clair ?
Tu choisis une ligne et tu veux la copier où ????
0
muadch Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
en plus simple :
A1 = celulle vide
B1 = cellule qui contient un mot
Je séléctionne la cellule A1 avec la souris je lance une macro elle me copie le contenu de la cellule B1 dans la cellule A1.

B1 est constant mais A1 est varible.

Ce que je cherche c'est une commande qui quand je séléctionne une cellule me donne son nom.

N'ayant rien trouvé je me suis contenté de lancer un formulaire VBA où je dois indiquer la cellule que je desire, à l'occurance A1.

Cependant j'aimerais quand même savoir s'il est possible d'effectuer ce que j'ai écrit plus haut.
0
sncf Messages postés 121 Date d'inscription   Statut Membre Dernière intervention   14
 
En somme tu selectionnes un ligne vide, tu enregistre son "nom", tu sélectionnes une ligne contenant des données et tu colles ces données dans la ligne dont ut as enregistré le nom
Ai je bien résumé ?
0
muadch Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   > sncf Messages postés 121 Date d'inscription   Statut Membre Dernière intervention  
 
Exactement !
0
Utilisateur anonyme
 
Euh... Oui c'est moyennement clair ... :-);

En ait ton problème possède multi solutions, car on n'est pas figé à donner une adresse absolue comme tu le fait dans ton exemple de code... Ainsi par exemple si on fait :

t=4
Range("A" & t).value = "un truc"

alors cela interprêté comme Range("A4").value= etc.

LA question c'est de savoir comment tu veux que Excel sache où tu veux copier ta cellule sélectionnée... Prendre un nom de cellule n'est pas très souple, à mon avis...
SI ton problème le permet il serait meilleur de prendre une colonne spécifique est de coller au fur et à mesure les données les unes sont les autres...
IL suffira alors de repérer seulement la dernière case pour copier l'information sélectionnée...

Enfin, c'est à préciser ce que tu veux vraiment...
0
sncf Messages postés 121 Date d'inscription   Statut Membre Dernière intervention   14
 
Faire tout cela en une seule fois je ne vois pas comment faire*
Par contre en ce qui concerne le nom, tu peux utilier
Activecell.adress
0
muadch Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Activecell.address est la réponse à mon problème.
pour le reste c'est bon.
merci beaucoup
0
bbi_ Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
j'ai préparer programme à l'aides des macro sous excel, le programme ça marche très mais pour le bien finir j'ai pensé à afficher une forme par exemple tout au long de l'éxécution de la macro afin de masquer ce qui fait la macro.
Merci beaucoup de me faire une proposition à ce propos car j'ia pas trouver de solution pour ça
0
frenchy
 
Bonjour,

Application.ScreenUpdating = False 'au début de ton code
Application.ScreenUpdating = True ' à la fin de ton code

Ca permet de ne pas voir les étapes de la macro ++
0