Bonjour tout le monde,

Je vous remercie pour votre aide à venir. Je n'arrive pas récupérer la qualité d'impression à partir d'une fonction.

Ou plutôt, j'arrive à la récupérer, mais je n'arrive pas à la "manipuler", la variable retournée est du type variant, mais je n'arrive rien à en faire. Outre les exemple ci-dessous, j'ai tenté un if pour savoir quelle était la valeur. Avec > 1 il me retourne vrai et avec < 2 il me retourne faux... Je galère, pourtant cela devrait être tout simple.

voilà les exemples les 2 premiers fonctionnes, la suite pas!!!

En vous remerciant de votre aide.

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
Function version1(Optional a As Variant)
    Application.Volatile
    version1 = (ActiveSheet.PageSetup.PrintQuality) "Fonctionne et me donne  (qualité brouillon)"
End Function
 
Function version2(Optional a As Variant) "Fontionne et me donne -1 (qualité brouillon)"
    Application.Volatile
    Dim x As Variant "je ne sais pas comment déclarer autrement, en string ou integer, cela ne fonctionne pas"
    x = (ActiveSheet.PageSetup.PrintQuality)
    version2 = (x)
End Function
 
Function version3(Optional a As Variant) " Fontionne pas et me donne Valeur"
Application.Volatile
    Dim x As Integer, y As String
 
    x = (ActiveSheet.PageSetup.PrintQuality)
    If x = -1 Then
        y = "qualité brouillon"
    End If
 
    version3 = (y)
 
End Function
 
Function version4(Optional a As Variant) "Fontionne pas et me donne Valeur"
Application.Volatile
    Dim x As Integer, y As String
 
    x = (ActiveSheet.PageSetup.PrintQuality)
    Select Case (x)
    Case Is = -1
        y = "qualité brouillon"
    End If
 
    version4 = (y)
 
End Function


Ca fait un bon moment que je cherche mais je ne trouve pas. Pourtant, j'ai utilisé le même principe pour le format (paysage et portrait) et la ça fonctionne.

En vous remerciant