Microsoft 365 Signature manuscrite insérer sur une feuille excel

Wartdogs

XLDnaute Nouveau
Bonjour a tous,

Un peu d'aide serait le bien venu, j'ai trouvé un fichier qui permet d'émarger une ligne pour ex présence de la personne.
Je souhaiterai le modifier pour faire signer un client pour valider une feuille d'heure, le problème que je rencontre c'est la taille de la cellule ou est collé l'image de la signature.
J'ai essayé de modifier le code mais je rencontre toujours le même problème la zone de collage de l'image qui se trouve dans des cellules et colonnes fusionnées.
Le code a l'origine utilise un tableau, en le modifiant les références du code par des cellules, cela fonction. Mais dés que je fusionne la cellule I3 avec J3 pour agrandir la zone ça ne fonctionne pas.
Le problème vient de la fusion des cellule ou se trouve la signature.
Je vous fais suivre en pièce jointe le dossier.
Etant novice, si les thermes utilisés sont incorrect veuillez m' en excuser.
PS.Je vous souhaite a vous et vos familles une bonne santé.
Cordialement
Arnaud Brossard
 

Pièces jointes

  • Feuille émargement tactile_test1.xlsm
    37.7 KB · Affichages: 28

laurent3372

XLDnaute Impliqué
Supporter XLD
J'ai fait quelques modifs à Worksheet_SelectionChange pour qu'il accepte les cellules fusionnées:
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    Select Case True
    Case Target.Areas.Count > 1: Close_TabTip
    Case Not Application.Intersect(Target, Range("F3")) Is Nothing: Open_TabTip
    Case Not Application.Intersect(Target, Range("G3")) Is Nothing: Open_TabTip
    Case Not Application.Intersect(Target, Range("H3")) Is Nothing: Open_TabTip
    Case Not Application.Intersect(Target, Range("I3")) Is Nothing:
        Select Case True
            Case Target(1).FormulaR1C1 = "ü"
            Case Range("F3") = vbNullString
            Case Range("G3") = vbNullString
            Case Else
                Application.ScreenUpdating = False
                Set Usf_Sig.Source = Target
                Participant = Range("F3") & " " & Range("G3")
                Usf_Sig.Caption = "Signature de " & Participant
                Usf_Sig.Show
                If TypeName(Selection) = "Picture" Then
                    With Selection
                        .Name = "Sig_" & Participant
                        .OnAction = "'" & Me.Name & ".Supprimer_Signatures """ & Target.Address & """,""" & Participant & """'"
                        .ShapeRange.LockAspectRatio = msoFalse
                        .Height = Target.Height
                        .Width = Target.Width
                    End With
                    Range("I3").Font.Name = "Wingdings"
                    Range("I3").Font.Size = 9
                    Range("I3") = "ü"
                    Target.Select
                End If
        End Select
    Case Else: Close_TabTip
    End Select
End Sub
J'en ai profité pour corriger une erreur:
Range("I3") = "ü" au lieu de Target.Range("I3")

Je pense toutefois qu'il serait plus simple d'agrandir la taille de la cellule I3 au lieu de la fusionner avec J3.
Cordialement,
--
LR
 

Discussions similaires

Statistiques des forums

Discussions
314 716
Messages
2 112 161
Membres
111 447
dernier inscrit
jasontantane