double click = formulaire

Jul018

XLDnaute Junior
Bonjour

Je travaille sur une feuille dont les données sont préalablement entrées par le biais d'un formulaire.
Une fois le formulaire validé celui-ci va copier les données dans la ligne B112 puis appeler l'ouverture
d'une autre macro qui elle a vocation a copier ces données dans le tableau de l'onglet concerné puis dans un fichier situé dans un autre répertoire correspondant au bon numéro d'affaire.

Je souhaite que lors d'un double click sur une cellule que l'on désire modifier un nouveau formulaire s'ouvre avec les données liées à cette cellule et qu'une fois validé il effectue les même action que le formulaire précédent, c'est à dire incrémenter le tableau et la fichier affaire concerné.

Je me suis inspiré de ce que j'ai trouvé sur le net mais pour une raison que j'ignore ça ne marche pas, ça ne daigne même pas me signaler une petit erreur qui pourrait comprendre la source de cette inaction.

Voici mon code:

Code:
Private Sub Worksheet_beforedoubleclick(ByVal sel As Range, cancel As Boolean)

ModificationMO.Show 'ModificationMO est le nom de mon formulaire de modification

End Sub
____________________________________________________________

Private Sub CommandButton1_Click()
'on teste la saisie numéro d'affaire...
If Me.TextBox7.Text = "" Then
MsgBox "vous devez entrer un numéro d'affaire"
Me.TextBox7.SetFocus
Exit Sub
End If
'on teste la saisie du monteur...
If Me.TextBox10.Text = "" Then
MsgBox "vous devez entrer un monteur"
Me.TextBox10.SetFocus
Exit Sub
End If
'on teste la saisie de la statut...
If Me.TextBox8.Text = "" Then
MsgBox "vous devez entrer le statut"
Me.TextBox8.SetFocus
Exit Sub
End If
'on teste la saisie du numéro de la semaine...
If Me.TextBox9.Text = "" Then
MsgBox "vous devez entrer le numéro de la semaine"
Me.TextBox9.SetFocus
Exit Sub
End If
'on teste la saisie des heures effectuées...
If Me.TextBox5.Text = "" Then
MsgBox "vous devez entrer les heures effectuées"
Me.TextBox5.SetFocus
Exit Sub
End If
'on teste la saisie du flash...
If Me.TextBox6.Text = "" Then
MsgBox "vous devez entrer le flash"
Me.TextBox6.SetFocus
Exit Sub
End If

If Worksheets(ActiveSheet.Name).Cells(6, sel.Column).Value = "HEURES EFFECTUEES" Then
Me.TextBox7.Text = Cells(5, sel.Column).Value 'numéro d'affaire
Me.TextBox10.Text = Cells(3, sel.Column).Value 'monteur
Me.TextBox8.Text = Cells(4, sel.Column).Value 'statut
Me.TextBox9.Text = Cells(sel.Row, B).Value 'n°delasemaine
Me.TextBox5.Text = Cells(sel.Row, sel.Column).Value 'Heureseffectuées
Me.TextBox6.Text = Cells(sel.Row, sel.Column + 1).Value 'flash
End If

If Worksheets(ActiveSheet.Name).Cells(6, sel.Column).Value = "FLASH" Then
Me.TextBox7.Text = Cells(5, sel.Column - 1).Value 'numéro d'affaire
Me.TextBox10.Text = Cells(3, sel.Column - 1).Value 'monteur
Me.TextBox8.Text = Cells(4, sel.Column - 1).Value 'statut
Me.TextBox9.Text = Cells(sel.Row, B).Value 'n°delasemaine
Me.TextBox5.Text = Cells(sel.Row, sel.Column - 1).Value 'Heureseffectuées
Me.TextBox6.Text = Cells(sel.Row, sel.Column).Value 'flash
End If

Monteurconverti = Application.WorksheetFunction.Proper(Me.TextBox10.Text)
'mise en place des données dans la feuille de calcul

Range("B112").Value = Monteurconverti
Range("F112").Value = TextBox9.Text
Range("C112").Value = TextBox7.Text
Range("H112").Value = TextBox8.Text
Range("E112").Value = TextBox5.Text
Range("D112").Value = TextBox6.Text

'on décharge le formulaire
Unload Me 'de cette facon à la prochaine saisie les textbox seront vides à l'ouverture

'on appelle la fonction correspondante, celle qui va incrémenter les données dans le bon fichier
Call Marquer
 
Exit Sub

Merci d'avance pour toutes vos suggestions

Julien
 

Discussions similaires

Réponses
7
Affichages
1 K
Réponses
4
Affichages
544

Membres actuellement en ligne

Statistiques des forums

Discussions
312 505
Messages
2 089 071
Membres
104 020
dernier inscrit
Mzghal