XL 2019 copie de cellule a partir d'un effectif

fkrystal21

XLDnaute Nouveau
bonjour a tous

j' aurai besoin d 'aide pour un tableau, je suis débutante avec excel et recherche une formule ou autre facon possible de copier X fois une cellule sur un tableau a partir d' une base de données. bien sur les cellules devront se suivre sur 4 colonnes et ne pas laisser de vide.

c'est un peu compliqué a expliquer


ex

base de données

C1 mixé 4
C1 Mouliné 6
C2 mixé 6
C2 mouliné 7
etc......


feuille 2

C1 mixé C1 mixé C1 mixé C1 mixé
C1 mouliné C1mouliné C1mouliné C1 mouliné
C1 mouliné etc.......

je vous remercie d 'avance de vos aide
 

job75

XLDnaute Barbatruc
Bonjour fkrystal21, JHA,

En Feuil2 formule en A2 à tirer à droite et vers le bas :
Code:
=REPT('Base de données'!$A1;COLONNES($A2:A2)<='Base de données'!$B1)
Formule en A1 pour savoir jusqu'où il faut tirer la formule :
Code:
="Tirez la cellule A2 vers la droite jusqu'à "&ADRESSE(2;MAX('Base de données'!B:B);4)&" puis vers le bas jusqu'à la ligne "&EQUIV(9^9;'Base de données'!B:B)+1
A+
 

Pièces jointes

  • Répétition(1).xlsx
    10.9 KB · Affichages: 1
Dernière édition:

job75

XLDnaute Barbatruc
Voyez le fichier .xlsm joint et cette macro dans le code de Feuil2 :
VB:
Private Sub worksheet_activate()
Dim ncol%, tablo, nlig&, resu(), i&, x$, j&, n&
ncol = 4 'nombre de colonnes de destination, à adapter
With Feuil1.[A1].CurrentRegion
    tablo = .Resize(, 2) 'matrice, plus rapide
    nlig = Application.Ceiling(Application.Sum(.Columns(2)) / ncol, 1)
    ReDim resu(1 To nlig, 1 To ncol)
End With
For i = 1 To UBound(tablo)
    x = tablo(i, 1)
    For j = 1 To tablo(i, 2)
        resu(1 + Int(n / ncol), 1 + n Mod ncol) = x
        n = n + 1
Next j, i
'---restitution---
If FilterMode Then ShowAllData 'si la feuille est filtrée
With [A1] '1ère cellule de restitution, à adapter
    .Resize(nlig, ncol) = resu
    .Resize(nlig, ncol).Borders.Weight = xlThin 'bordures
    .Offset(nlig).Resize(Rows.Count - nlig - .Row + 1, ncol).Delete xlUp 'RAZ en dessous
End With
With UsedRange: End With 'actualise la barre de défilement verticale
End Sub
Elle se déclenche quand on active la feuille.

PS : vos résultats étaient erronés, il y a 9 "C3 mixé" et non pas 11.
 

Pièces jointes

  • classeur test fkrystal(1).xlsm
    18.9 KB · Affichages: 11

Discussions similaires

Réponses
0
Affichages
286

Statistiques des forums

Discussions
313 122
Messages
2 095 470
Membres
106 271
dernier inscrit
laptitebulle06