Modifier la cellule sélectionnée dans une macro à partir du code

Résolu/Fermé
ArtyAcfly Messages postés 3 Date d'inscription jeudi 18 février 2016 Statut Membre Dernière intervention 18 février 2016 - 18 févr. 2016 à 10:05
cs_Le Pivert Messages postés 7870 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 23 janvier 2023 - 18 févr. 2016 à 11:19
Bonjour,

Je suis en train d'écrire une macro que j'aimerais appliquer à plusieurs fichiers.
L'opération de la macro est assez simple, comme additionner des valeurs de deux colonnes.
Cependant mes fichiers ne contiennent pas le même nombre de données dans ces colonnes. J'aimerais donc, que lorsque j'étire mon opération sur toute la colonne avec le petit carré noir (je suis désolé je ne sais pas comment ca s'appelle, quand on fait une première fois l'opération sur une première ligne puis on tire le carré noir pour que cette opération s'applique aux lignes suivantes), la portée jusqu'à laquelle il est étiré varie en fonction du nombre de données du fichier.


Par exemple si je définie la macro dans un fichier qui possède 15 données, je voudrais que lorsque je l'applique dans un fichier qui en contient 20, ces 20 données soit prises en compte et non pas simplement les 15 premières.


J'ai pensé à d'abord enregistrer le nombre de donnée du fichier avec NBVAL (=k).
Puis à partir de ce nombre, dans le script :

Selection.AutoFill Destination:=Range("F1:F15"), Type:=xlFillDefault

je voudrais remplacer le F15 souligné par quelque chose du type F(k).
Seulement je ne connais pas la syntaxe pour cela.
Voici le pourquoi de mon appel à l'aide.

Merci pour l'aide que vous pourrez m'apporter.
Arty

2 réponses

cs_Le Pivert Messages postés 7870 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 23 janvier 2023 723
18 févr. 2016 à 10:14
0
ArtyAcfly Messages postés 3 Date d'inscription jeudi 18 février 2016 Statut Membre Dernière intervention 18 février 2016
18 févr. 2016 à 11:13
Bonjour,

Ca ne m'aide pas vraiment, je sais trouver le bout de ma colonne de donnée.
Ce qu'il me manque surtout, c'est la syntaxe.
J'ai rencontré un deuxième problème cependant.
Je souhaite faire une macro permettant de tracer un graphique à partir de mes données.
De même je souhaite sélectionner les données du graphique en fonction de leur nombre, sauf que dans cette formule la syntaxe change et la solution précédente ne marche plus.

Je voudrais donc réussir à remplacer, dans la ligne permettant de sélectionner les données du tableau :

ActiveChart.SeriesCollection(1).Values = "=Feuil1!$B$1:$B$4"

Par une sélection ne s'arrêtant pas à B4 mais à B(NBVAL).
Cells ici ne fonctionne plus.
Je ne saisi pas en fait exactement la nature de "=Feuil1!$B$1:$B$4", et ne suis donc pas apte à correctement le remplacer.
0
cs_Le Pivert Messages postés 7870 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 23 janvier 2023 723
18 févr. 2016 à 11:19
0
ArtyAcfly Messages postés 3 Date d'inscription jeudi 18 février 2016 Statut Membre Dernière intervention 18 février 2016
18 févr. 2016 à 10:23
C'est bon c'est tout bête en fait. Merci quand même.
S'il y en a que ça intéresse, il suffit de changer Range("F1:F15") par Range(Cells(1, 6), Cells(k, 6)).
Tout simplement.
Bonne journée.
0