XL pour MAC Macro pour remplissage automatique de cellules

  • Initiateur de la discussion Initiateur de la discussion Ebene
  • 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 !

Ebene

XLDnaute Nouveau
Bonjour
Est-il possible avec une macro, de faire la même chose que dans Excel, à savoir :
lorsque l'on double clique sur le petit carré en bas à droite d'une cellule sélectionnée,
le remplissage des cellules suivantes de la colonne se fait automatiquement jusqu'à la dernière ligne ?
Dans le fichier simplifié joint, les colonnes C, F et H sont à remplir automatiquement.
L'onglet AVANT correspond à ce que j'ai.
L'onglet APRES correspond à ce que je veux au final.
(Sur les fichiers définitifs, les colonnes à remplir ne seront pas celles du fichier simplifié mais je pense que ce sera adaptable)
Merci
 

Pièces jointes

Re

En continuant mes tests, j'en suis arrivé à ceci
VB:
Sub test_ok()
Dim i&, rng As Range
Set rng = Cells(1).CurrentRegion.SpecialCells(xlCellTypeBlanks)
For i = 1 To rng.Areas.Count
rng.Areas(i).Formula = rng.Areas(i).Item(1).Offset(-1).Formula
Next
End Sub
Test OK sur PC

NB: Sinon le raccourci CTRL+B marche trés bien aussi
(même sur une sélection multiple)
D'ailleurs la macro du message#2 n'est que la transcription en VBA de ce fameux raccourci 😉
 
Bonjour @Ebene, @Staple1600, le forum

Je te propose ceci:
VB:
Private Sub MaJ()
Application.ScreenUpdating = False
Dim Derlig&

With Worksheets("WDPD1359 - MR BRICOLAGE")
    Derlig = .Range("A" & Rows.Count).End(xlUp).Row
    .Range("L2:L" & Derlig).FillDown
    .Range("W2:W" & Derlig).FillDown
    .Range("Y2:Y" & Derlig).FillDown
End With

End Sub
*Edit : J'ai rajouté le fichier

@Phil69970
 

Pièces jointes

Re

C'est vrai que souvent le demandeur ne met pas un fichier représentatif de sa problématique.
A savoir ici il aurait mis dans son exemple le nom de son onglet et les colonnes à traiter (L,W,Y) 7 post aurait été épargné, mais je n'aurais point pu te donner le bonjour.... 😉

@Phil69970
 
Re

Donc en adaptant ma macro précédente
VB:
Sub Test_OK_B()
Dim i&, rng As Range
Set rng = Union([L:L].SpecialCells(4), [W:W].SpecialCells(4), [Y:Y].SpecialCells(4))
For i = 1 To rng.Areas.Count
rng.Areas(i).Formula = rng.Areas(i).Item(1).Offset(-1).Formula
Next
End Sub
 
Re

Phil
Exact.
Mais perdre du temps un jour férié, c'est malaisant comme dirait ma nièce 😉
(Non, je plaisante)
D'ailleurs en parlant de plaisanterie, le code précédent en avait des miettes
Donc code corrigé
VB:
Sub Test_OK_B()
Dim i&, r As Range
Set r = Union([L:L].SpecialCells(4), [W:W].SpecialCells(4), [Y:Y].SpecialCells(4))
For i = 1 To r.Areas.Count
r.Areas(i).Offset(-1).Resize(r.Rows.Count + 1) = r.Areas(i).Item(1).Offset(-1).Formula
Next
End Sub
 
Re

En mixant mon message#2 avec le message#12
Je simplifie ainsi
VB:
Sub Test_OK_C()
Dim i&, r As Range
Set r = Union([L2], [L:L].SpecialCells(4), [W2], [W:W].SpecialCells(4), [Y2], [Y:Y].SpecialCells(4))
r.FillDown
End Sub
=>Phil
Tu ne vois pas de biais possible?
Cela semble fonctionner non?
 
- 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

Retour