Selection d'une plage de cellule variable VBA [Résolu/Fermé]

Messages postés
1
Date d'inscription
mardi 24 juillet 2012
Statut
Membre
Dernière intervention
24 juillet 2012
- - Dernière réponse : Normad
Messages postés
113
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
7 juillet 2015
- 20 mai 2013 à 10:27
Bonjour,

Je suis assez débutant en vba et je veux pouvoir sélectionner une colonne a partir de la cellule A9 et jusqu'à une cellule N variable, je sais que ca doit etre simple mais je ne trouve pas. Voici mon code:
Sub test()

Msg = "Entrez la date de début"
date_debut = "date de début"
pardefault = Range("A9")
marche1 = InputBox(Msg, date_debut, pardefault)
Set masélection = Application.Range("A9")
masélection.Value = marche1

Msg = "Entrez la date de fin"
date_fin = "date de fin"
pardefault = Range("B9")
marche2 = InputBox(Msg, date_fin, pardefault)

Msg = "nombre de jours " & DateDiff("d", marche1, marche2)
Set masélection = Application.Range("B6")
masélection.Value = DateDiff("d", marche1, marche2)

Range("A10").Select
ActiveCell.FormulaR1C1 = "=R[-1]C+R7C2"
N = DateDiff("d", marche1, marche2) + 9
Range("A10").Select
Selection.AutoFill Destination:=Range("A10:A19"), Type:=xlFillDefault</gras>

C'est au niveau de la dernière ligne qu'il faut que je change quelque chose, moi je ne veux pas A19 mais la N ième cellule de la colonne.
Merci beaucoup à ceux qui pourront m'aider
Afficher la suite 

1 réponse

Messages postés
113
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
7 juillet 2015
22
0
Merci
Tout simplement remplacer 19 par N comme ça :

Selection.AutoFill Destination:=Range("A10:A" & N), Type:=xlFillDefault


Sinon, si je peux me permettre : ce serait mieux de déclarer tes variables, de faire une gestion des erreurs possibles (si le résultat n'est pas une date ou qu'on annule le InputBox par exemple) et d'éviter les Selection ou les entrées de formules qui ralentissent l'exécution du code VBA..