Macro pour dupliquer cellule

Bonjour

Je cherche a ce qu'une valeur d'une cellule soit dupliquer dans d'autres cellules en appuyant sur un bouton.

Le fichier test explicatif joint .....

Merci pour cette nouvelle aide

Lingo

Bonjour Norberlingo, bonjour le forum,

Pas très clair tes explications... Peut-être comme ça :

Sub Bouton5_Cliquer()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim PL As Range 'déclare la variable PL (PLage)
Dim CEL As Range 'déclare la variable CEL (CELlule)
Dim I As Byte 'déclare la variable I (Incrément)
Dim OS As Byte 'déclare la variable OS (OffSet)

Set O = Worksheets("Feuil1") 'définit l'onglet O
'définit la plage PL
Set PL = Application.Union(O.Range("E10:E12"), O.Range("G10:G12"), O.Range("I10:I12"), O.Range("K10:K12"))
For Each CEL In PL 'boucle 1 : sur toutes les cellules CEL de la plage PL
    If CEL.Value <> "" Then 'condition : si la cellule CEL n'est pas vide
        OS = 4 'initialise l'offset OS
        For I = 1 To 4 'boucle 2 : sur les 4 tableaux inférieurs
            CEL.Offset(OS, 0).Value = CEL.Value 'copie la valeur de la cellule OS lignes plus bas
            OS = OS + 4 'redéfinit l'offset OS
        Next I 'prochain tableau de la boucle 2
    End If 'fin de la condition
Next CEL 'prochaine cellule de la boucle 1
End Sub

Bonjour Lingo, ThauThème,

voici ton fichier Excel modifié :

* à l'ouverture du fichier, la cellule active est E12 ; clic sur Bouton 5

* sélectionne G16 ; clic sur Bouton 5

* sélectionne K20 ; clic sur Bouton 5

Sub Macro5()
  Dim ville$, lig&, col%, ltr$
  With ActiveCell
    ville = .Value: If ville = "" Then Exit Sub
    lig = .Row: If lig < 10 Or lig > 24 Then Exit Sub
    col = .Column: If col <> 5 And col <> 7 And col <> 9 And col <> 11 Then Exit Sub
    ltr = Cells(lig, 3): If ltr <> "A" Then Exit Sub
    .Offset(3) = ville: If lig <= 20 Then .Offset(6) = ville
  End With
End Sub

dhany

Bonsoir ry merci pour les réponses....

J'ai utilisé la solution de Dhany qui convient parfaitement à mon projet....

Mille merci à tous

Lingo

Bonsoir Lingo,

tu a écrit :

J'ai utilisé la solution de Dhany qui convient parfaitement à mon projet....

merci pour ton retour ! pour passer le sujet en résolu, clique sur à droite de (coin haut droit du post)

ça permet aussi de clôturer le fil de la discussion (toi seul peut le faire, car c'est toi qui a créé ce sujet).

dhany

Bonjour

Une petite suite à mon projet ....je voudrais ajouter un code

Dans le même ordre d'idée je souhaite dupliquer en plus de mon projet initial, les cellules avec "M" (en colonne C) : dans mon exemple si j'ai bordeaux en E11 et que j'appuie sur dupliquer je voudrais bordeaux en E15, E 20 et E 24

Enfin idem avec A en colonne C, dupliquer A une seule fois c'est a dire que si j'ai NICE en G12 et que j'appuie sur duplique j'ai NICE en G16

Est ce possible ....

Merci

Berlingo

Rechercher des sujets similaires à "macro dupliquer"