Bonjour ,

Je viens une nouvelle fois vers vous afin de trouver une solution a mon probleme....

J'utilise la fonction "rng.value"(que Mercatog m'a aimablement fait decouvrir hier !!).
Cette fonction fonctionne (vraisemblablement pour 3 arguments au maximum), le probleme étant que je compte l'utiliser pour plus de 3 arguments (chiffre et mot).

Selon vous st-ce moi qui est à la masse (probleme dans mon code?) ou bien pourriez-vous le cas echeant m'éguiller sur une fonction qui fonctionne de la meme maniere mais qui peut prendre en compte plus de 3 arguments...

Je vous joints le bout de code dans lequel je l'utilise:

la fonction"Test_caleur_zero"fonctionne(3 arguments)
la fonction "Test_BA" fonctionne (3 arguments)
la fonction "Test_PA" ne fonctionne pas (4 arguments ou plus probablement par la suite);Le message est "erreur de compilation:Nombre d'arguments incorrect ou affectation de propriete incorrecte"
Ces 2 fonctions sont des fonctions appelées par la fonction "Befaure_doubleClic".

code:

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
Sub Test_valeur_zero(rng As Range)
 
    rng.Value = IIf(rng.Value = 0, 1, 0)
    'code pour colonnes "origine"
 
End Sub
 
Sub Test_BA(rng As Range)
 
    rng.Value = IIf(rng.Value = 0, "HS", 0)
 
End Sub
 
Sub Test_PA(rng As Range)
 
    rng.Value = IIf(rng.Value = 0, "HS", 0, 1)
 
End Sub
 
Sub worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 
    If Not Intersect(Target, Range("E10:E59,H10:H59,K10:K59,N10:N59,Q10:Q59,T10:T59,W10:W59,Z10:Z59,AC10:AC59,AF10:AF59,AI10:AI59,AK10:AK59")) Is Nothing Then 'selection des colonnes activent
        Call Test_valeur_zero(Target) 'appelle la macro Test_valeur_zero
        Cancel = True 'desactive la fonction seletion au double-clic
 
    ElseIf Not Intersect(Target, Range("F10:F59")) Is Nothing Then
        Call Test_BA(Target)
        Cancel = True
 
    ElseIf Not Intersect(Target, Range("I10:I59")) Is Nothing Then
        Call Test_PA(Target)
        Cancel = True
   'obligé de mettre else if not then, au lieu de elsenot car plantage, le dernier else n'est pas obligatoire
    End If
 
End Sub
Donc clairement, connaissez-vous un module qui puisse me permetre d'avoir plus de 3 arguments?

Merci d'avance une fois de plus pour votre aide et le temps passé pour moi.

Cordialement