shinji7800
Messages postés297Date d'inscriptionmercredi 7 novembre 2007StatutMembreDernière intervention30 septembre 2010
-
Modifié par shinji7800 le 30/09/2010 à 16:47
Bonjour,
j'aurai besoin d'aide pour pouvoir utiliser la fonction "worksheet_change"
mon but est de contrôler la valeur certaines cellules (fusionnées).
par exemple :
- I9:I10
- I21:I22
- I37:38
les cellules à contrôler ne sont pas encore déterminées ( car mon fichier Excel évolue encore)
si une valeur que j'attends est entrée, j'appelle une fonction afin d'afficher un message de saisi.
cependant ce message de saisi ne sera pas le même en fonction de la ligne.
je m'explique :
si I9="NOK" un message de saisi apparait (avec un message pour cette ligne)
si I21="NOK" un autre message de saisi apparait (diffèrent de I9)
Si I9<>"NOK" je veux faire disparaitre mon message de saisi (idem pour les autre cellule)
voici ce que j'ai codé, mais je pense que je ne sais pas utiliser cette fonction.
Private Sub Worksheet_Change(ByVal target As Range)
If Range("I9").Value <> "NOK" Then
Call MaS10(target)
end if
If Range("I21").Value <> "NOK" Then
Call MaS10(target)
end if
If Range("I9").Value = "NOK" Then
Call MaS1
end if
If Range("I21").Value = "NOK" Then
Call MaS4
End If
End Sub
Public Function MaS1()
Range("J9:J10").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = "essai N°1"
.ErrorTitle = ""
.InputMessage = "Commencez par : " & Chr(10) & "" & Chr(10) & "- tenter de faure un pingu sur l'equipement depuis SRV1" & Chr(10) & "" & Chr(10) & "- si cela ne fontionne pas tentez de blabla"
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Function
Public Function MaS10()
cells.Offset(0, 1).Select
With Selection.Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.InputMessage = ""
.ShowInput = True
.ShowError = True
End With
End Function
Public Function MaS4()
Range("J21:J22").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = "essai N°4"
.ErrorTitle = ""
.InputMessage = "test 4"
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With