XL 2019 Copier une cellule d'une ligne toutes les 5 lignes

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 !

Bonjour lynyrd, sylvany,

En VBA ça donne ceci :
VB:
Sub TirerCellule()
Dim source As Range, dest As Range, pas&, n
Set source = [A1]
Set dest = [B1]
pas = 5
n = Int(Val(Application.InputBox("Nombres de cellules à remplir :")))
dest.EntireColumn.Replace source, "", xlWhole 'RAZ
If n < 1 Then Exit Sub
dest = source
For n = 1 To n - 1
    dest.Offset(pas) = dest
    Set dest = dest.Offset(pas)
Next
End Sub
A+
 
Dernière édition:
L'inconvénient de la solution ave formules c'est qu'elle efface les autres cellules.

Pour l'array il vaut mieux écrire :
VB:
Sub TirerCellule3()
    ' Par array
    Dim T0, n, T, V
    T0 = Timer
    n = [E4]: V = [A1]
    [B:B].Replace V, "", xlWhole
    T = Range("B1:B" & 5 * n)
    For i = 1 To 5 * n Step 5
        T(i, 1) = V
    Next i
    [B1].Resize(UBound(T, 1), UBound(T, 2)) = T
    [E12] = Timer - T0
End Sub
 
Bonjour Job,
Chez moi c'est l'Array :
Je me suis aperçu que plus la version XL est récente plus les formules sont "lentes". Très surement par optimisation sur d'autres critères que le temps. Par contre elles sont de plus en plus puissantes.
Une sorte d'équilibre : on perd un tout petit peu de temps mais on gagne énormément en puissance.
 
- 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
2
Affichages
82
Réponses
2
Affichages
115
Réponses
75
Affichages
1 K
Réponses
5
Affichages
174
Réponses
7
Affichages
116
Réponses
9
Affichages
162
Retour