Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Copier coller VBA dans un autre ligne

elouali

XLDnaute Nouveau
Bonjour tt le monde je suis nouveau parmi vous , j'ai besoin d'aide

j'ai 2 feuilles : feuille 1 (INTERFACE) C'est la feuille dont j'ai sélectionner mes donnés d'entrés et une page de sortie (DEVIS)

j'aimerai lorsque j'appui sur le bouton me copier quelques cellule de page INTERFACE et les coller dans des cellules spécifiques dans page DEVIS, dans la ligne suivante

(pour mon cas j'ai utiliser une astuce d'insère une ligne ) mais j'aime pas alors je vais coller sans insère des lignes

ci joint le fichier
et merciii
 

Pièces jointes

  • MOULINETTE DEVIS REVOLVING RH&C.xlsm
    184.5 KB · Affichages: 7

job75

XLDnaute Barbatruc
Bonjour elouali,

Voyez le fichier joint et cette macro :
VB:
Sub Ajouter()
Dim c As Range
With Sheets("INTERFACE")
    If .[B5] = "" Then Exit Sub
    Set c = Sheets("DEVIS").Cells.Find(Replace(.[B5], "_", "*"), , xlValues, xlPart)
    If c Is Nothing Then Exit Sub
    Do
        Set c = c(2, 1)
        If c.Interior.ColorIndex <> xlNone Then Exit Sub
    Loop While c <> ""
    c = .[D5]
    c(1, 2) = .[D8]
    c(1, 3) = .[B14]
    c(1, 4) = .[D14]
    c(1, 5) = .[D11]
    c(1, 6) = c(1, 4) * c(1, 5)
End With
End Sub
A+
 

Pièces jointes

  • MOULINETTE DEVIS REVOLVING RH&C(1).xlsm
    192.5 KB · Affichages: 13

elouali

XLDnaute Nouveau
une autre question svp est ce que vous pouvez m'expliquer cette partie :

If .[B5] = "" Then Exit Sub
Set c = Sheets("DEVIS").Cells.Find(Replace(.[B5], "_", "*"), , xlValues, xlPart)
If c Is Nothing Then Exit Sub
Do
Set c = c(2, 1)
If c.Interior.ColorIndex <> xlNone Then Exit Sub

merci d'avance
 

job75

XLDnaute Barbatruc
A partir de la valeur en B5 de la feuille INTERFACE la macro recherche dans la feuille DEVIS la cellule c contenant "LITTERIE" ou "LINGE*LIT" ou "LINGE*BAIN" ou "ACCESSOIRES", l'astérisque * étant un caractère générique.

Puis à partir de cette cellule c la boucle Do/Loop la décale par pas d'une ligne pour trouver la 1ère cellule vide.

Cela à condition de ne pas rencontrer avant une cellule colorée (contenant un titre ou TOTAL HT).

A partir de cette nouvelle cellule vide c , sur la même ligne, on entre les valeurs en D8, B14, D14, D11 de la feuille INTERFACE.

Dans la 6ème cellule (colonne F) on entre le produit des 2 cellules précédentes.
 

Discussions similaires

Réponses
10
Affichages
643
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…