Bonjour,

Voilà 2 jours que je tourne en rond.

Je cherche, lorsque je clique (ou double-clique) sur une cellule, à copier/coller la valeur de cette cellule (source) dans une autre (cible).
Par exemple si je clique sur la cellule C5, je souhaite que sa valeur soit copiée en I3.

J'ai cherché sur le forum et je n'ai pas (ou pas su) trouver la solution.

Donc je suis passé par des moyens détournés à partir d'un code de Menhir permettant de supprimer une ligne en la sélectionnant.

Ligne 15, un InputBox permet d'indiquer la ligne à sélectionner (par exemple 5)
Ligne 18 je croise avec la colonne C (qui est la colonne sur laquelle je dois effectuer ma sélection).

Cela me donne la cellule C5 pour laquelle je souhaite copier/coller.

Ce sont ces 2 lignes qui sont de la "bricole" et pour lesquelles je vous interpelle.

Je vois déjà des et surtout des


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Sub Selection_Cellule1()
' Macro test réalisée à partir d'un code de Menhir qui sélectionne une ligne dont on indique le n° dans un InputBox pour la supprimer
 
' Efface la donnée en I3 pour partir sur cellule vide
' Selection de la ligne
' Sélectionne la cellule dans la colonne C croisée avec N° de ligne
' Copie/ colle la valeur en I3
' Message demandant confirmation (Tuto de Laurent OTT pages 7 et suivantes)
' Traitement de la réponse
 
Dim Rep As String
 
Range("I3").Delete
 
Rep = InputBox("Quelle ligne voulez-vous sélectionner ?", "Sélection", Selection.Row)
    If Rep = "" Then Exit Sub
 
Cells(CLng(Rep), 3).Select 'sélectionne la cellule dans la colonne C croisée avec N° de ligne
 
Selection.Copy
 
    Range("I3").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
 
     Rep = MsgBox("Vous allez réaliser la facture : " & Range("I3"), _
     vbYesNo + vbQuestion + vbDefaultButton2, _
     "Demande de confirmation")  ' affiche un message OUI / NON (vbYesNo)+ Icone ?
                                 ' + active bouton Non par défaut, titre du MsgBox = Demande de confirmation
 
        If Rep = vbYes Then ' Teste si l'utilisateur a choisi le bouton Oui ?
        Range("I4").Value = "Bravo" ' Si oui, alimente la cellule I4
 
        ' C'est ici que je dois mettre la macro de création de la facture
        ' en ayant mis un dernier message de confirmation "Attention procédure irréversible ! Etes vous certain ?"
 
        Else ' Sinon
 
        'MsgBox "Non." ' Affiche : Non.
        Range("I4").Value = "Non" ' Si non, alimente la cellule I4
        End If
End Sub
Vous en conviendrait tout ceci n'est pas très "pro", nous ne sommes pas dimanche mais cela fait bricoleur tout de même, d'autant que cela ne réponds pas à mon souhait.
Ce n'est qu'un ersatz.
En revanche travailler sur cette macro m'a permis de découvrir de nouveaux horizons.

Si une âme charitable pouvait solutionner mon problème...

Par avance merci

Philippe