• Initiateur de la discussion Initiateur de la discussion Laurent691
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Laurent691

XLDnaute Nouveau
Slt à ts, j'ai un petit soucis :

j'ai un tableau avec des cases remplis dans la ligne 1 : par exemple de A1 à Z1

Dans ligne 2 (cellule A2) j'ai fait un calcul que j'aimerais automatiser avec du code jusqu'à la cellule Z2


on peut faire comme ça :
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:Z2"), Type:=xlFillDefault

mais en fait le nombre de valeurs peut varier dans la ligne 1 (de A1 à ??)
il faudrait donc que l'autofill de la ligne 2 se fasse automatiquement jusqu'à la dernière cellule de la ligne 1.

je sais pas si je suis clair 😱 dites le moi
 
Re : Autofill avec VBA

Bonjour à tous, wilfried_42, Laurent691

Peut-être comme ça
Code:
Range(Cells(2, 1), Cells(2, [A1].End(xlToRight).Column)).FillRight
Par habitude j'utilisais toujours la méthode AutoFill ... Jusqu'à aujourd'hui.

Merci wilfried 🙂

A plus
 
Re : Autofill avec VBA

re: à tous

le problème avec autofill avec des valeurs (Suites logiques) et non pas des formules, c'est qu'excel doit connaître la logique de la suite pour la réaliser.
avec les formules c'est plus simple avec filldown, right

donc pour lui 2 cellules suffisent :
Code:
Sub essai()
    Range("A2").Value = "1"
    Range("B2").Value = "3"
    Range("A2:B2").autofill Destination:=Range("A2:L2"), Type:=xlFillDefault
End Sub
 
Re : Autofill avec VBA

re: à tous

le problème avec autofill avec des valeurs (Suites logiques) et non pas des formules, c'est qu'excel doit connaître la logique de la suite pour la réaliser.
avec les formules c'est plus simple avec filldown, right

donc pour lui 2 cellules suffisent :
Code:
Sub essai()
    Range("A2").Value = "1"
    Range("B2").Value = "3"
    Range("A2:B2").autofill Destination:=Range("A2:L2"), Type:=xlFillDefault
End Sub

merci,
ouais ça marche mais je souhaite faire ce processus sur plusieurs feuilles, la fin de l'autofill varie suivant les feuilles, donc il faudrait un autofill de A2 jusqu'à la dernière cellule non vide de la première ligne
 
Re : Autofill avec VBA

Bonjour,


Range("A2").Select
Selection.AutoFill Destination:=Range("A2", Cells(2, Range("A1").End(xlToRight).Column)), Type:=xlFillDefault

mais cela suppose qu'il n'y a pas de cellule vide dans la ligne 1 avant la dernière cellule.

sinon,
Selection.AutoFill Destination:=Range(Cells(2, 1), Cells(2, Cells(1, 16384).End(xlToLeft).Column)), Type:=xlFillDefault
permet d'avoir une cellule vide dans la collection

bonne fin de dimanche
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
432
Réponses
3
Affichages
439
Retour