Aide VBA excel
mosdef28
-
mosdef28 -
mosdef28 -
Bonjour,
actuellement je travail, dans le cadre d'un projet, sur un fichier Excel.
N'étant pas utilisateurs expert, je fait appel a vous pour m'aider à programmer le fichier.
En quelque mot j'ai besoin :
- d'insérer des lignes selon une saisie (ca j'ai réussi mais je voudrais que la macro ne s'éxecute qu'en cas de saisie dans une plage de cellule et surtout qu'une seule fois par groupe)
- Fusionner des cellules apres insertion des lignes
- recopier des formules des lignes précédentes
et d'autre petite chose qui viendront un coup que cela seras opérationnel.
Merci d'avance !
actuellement je travail, dans le cadre d'un projet, sur un fichier Excel.
N'étant pas utilisateurs expert, je fait appel a vous pour m'aider à programmer le fichier.
En quelque mot j'ai besoin :
- d'insérer des lignes selon une saisie (ca j'ai réussi mais je voudrais que la macro ne s'éxecute qu'en cas de saisie dans une plage de cellule et surtout qu'une seule fois par groupe)
- Fusionner des cellules apres insertion des lignes
- recopier des formules des lignes précédentes
et d'autre petite chose qui viendront un coup que cela seras opérationnel.
Merci d'avance !
3 réponses
-
Bonjour,
« je voudrais que la macro ne s'exécute qu'en cas de saisie dans une plage de cellule »
Exemple de code à placer dans le module de la feuille :Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, [B4:C8]) Is Nothing Then Exit Sub Call MonModule.MaMacro End Sub
« Fusionner des cellules »
Exemple de code à placer dans la macro :ActiveSheet.Range("E2:F4").Merge
« recopier des formules des lignes»
Peut-être qu'il suffit de copier la ligne :ActiveSheet.Rows("15").Copy ActiveSheet.Rows("16")Sinon c'est un peu plus compliqué :Dim rng As Range Dim cel As Range Set rng = Selection Set cel = ActiveCell ActiveSheet.Rows("15").Copy ActiveSheet.Rows("16").PasteSpecial Paste:=xlPasteFormulas Application.CutCopyMode = False rng.Select cel.Activate Set cel = Nothing Set rng = NothingMais peut-être ne faut-il pas copier toute la ligne mais seulement certaines cellules.... -
Bonjour,
merci pour la rapidité des réponses !
Je vais essayer ça dans la journée et reviendrais vers vous en cas de problèmes ou de réussite (serais cool!).
Cordialement -
Bonsoir,
quelque avancée mais pas exactement comme je le voudrais.
je pense qu'un petit fichier vaut mieux qu'un grand discours donc je le met en pièce jointe.
http://www.petit-fichier.fr/2011/12/27/test-one-star/
voilà en gros l'idée, dites moi si besoin plus de précision !