Erreur d’exécution '13' : incompatibilité de Type (Vba Access)

Résolu/Fermé
Nizar1969 - Modifié le 4 sept. 2020 à 22:04
 Nizar1969 - 5 sept. 2020 à 12:27
Bonjour,
sur mon procédure je reçois cette Erreur
Erreur d’exécution '13' : incompatibilité de Type
Private Sub Form_Load()
Dim iSconnect As Boolean
iSconnect = IIf("nomUsser_G" <> "", True, False)
If (iSconnect = True) Then
hasAccess iduser_G, Me
Else
DoCmd.Close acForm, Me.Name
DoCmd.OpenForm "UL_Login"
End If
End Sub

j en sais rien d'ou se produit cette erreur
merci de votre aide

6 réponses

RV71
Messages postés
507
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
27 juin 2022
31
4 sept. 2020 à 23:03
Bonjour,

1/ merci d'utiliser les balises de code quand tu postes.......... du code
https://www.commentcamarche.net/infos/25911-ccm-astuces-et-conseils-pour-la-redaction/#code

2/ sur quelle ligne survient l'erreur ?
Si c'est sur la ligne que tu as soulignée, qu'il y a t'il dans "nomUsser_G" (les " " ne sont-ils pas de trop) ?
Essaies en mettant un msgbox(nomUsser_G)

Aussi, pourquoi ne pas faire le test directement ainsi :
if nomUsser_G<>"" then
......
else
.......
end if



A+
0
Bonjour
Merci pour votre repense ,ensuit
par ce que j'ai déjà déclare ( hasAccess) dans une Module tel que
tel que
'************* La Fonction hasAcces Management les Utilisateurs jobs Formulaires ******
Public Sub hasAccess(idUser As Integer, frm As Form)
Dim isConnect As Boolean
isConnect = IIf(nomUser_G = "", False, True)
If (isConnect = False) Then
DoCmd.Close acForm, frm.Name
DoCmd.OpenForm "UL_Login"
Else
Dim idRole As Integer
Dim acces, modif As Boolean
idRole = DLookup("idRole", "Users", "idUser=" & idUser)
acces = DLookup("Acces", "AccesForms", "idRole=" & idRole & " and FormName='" & frm.Name & "'")
modif = DLookup("Modif", "AccesForms", "idRole=" & idRole & " and FormName='" & frm.Name & "'")
If (acces = False) Then
Form_A_Menu.txtErreurAcces = " Vous n avez pas le droit d'acces au Formulair " & frm.Name
DoCmd.Close acForm, frm.Name
DoCmd.OpenForm "A_Menu"
Else
Form_A_Menu.txtErreurAcces = ""
Dim ct As Control
For Each ct In Forms(frm.Name)
If (ct.ControlType = 104) And ct.Name <> "btndisconnecte" And ct.Name <> "btnChercher" Then
ct.Enabled = modif '**** ce peut être True ou False

End If


Next
End If


End If
End Sub

Donc j ai applique la procéder

Private Sub Form_Load()
Dim iSconnect As Boolean
iSconnect = IIf("nomUsser_G" <> "", True, False)
If (iSconnect = True) Then
hasAccess iduser_G, Me
Else
DoCmd.Close acForm, Me.Name
DoCmd.OpenForm "UL_Login"
End If
End Sub
a toutes les formule de mon application , au Evénement Sur chargement : mais quand je Click sur n'apport qu'il bouton a partir de formulaire A_Menu
je reçois ce : Erreur d’exécution '13' : incompatibilité de Type
j'en sais si la procéder manque t elle d'une déclaration DAO
merci de votre aide
0
yg_be
Messages postés
19554
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
30 juin 2022
1 129
Modifié le 5 sept. 2020 à 09:56
bonjour,
à quelle ligne l'erreur se produit-elle?
as-tu bien
option explicit
en début de module?
merci d'utiliser "basic" quand tu partages du vba.
au lieu de
isConnect = IIf(nomUser_G = "", False, True)

je pense plus clair
isConnect = nomUser_G <> ""

et, au lieu de
If (iSconnect = True) Then

If iSconnect Then

et au lieu de
If (isConnect = False) Then

If not isConnect  Then
0
Bonjour
l'erreur ce produis au niveau
isConnect=iif(nomUser_G <> "",True,False)

merci
0
RV71
Messages postés
507
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
27 juin 2022
31
5 sept. 2020 à 11:32
Bonjour,
le module fonctionne ?
Dans le module tu as
isConnect = IIf(nomUser_G = "", False, True)


alors que dans le load() tu as
iSconnect = IIf("nomUsser_G" <> "", True, False)

(il y a des " " et un s en plus)

Donc où cela fonctionne t-il pas ?
Avant la ligne où il y a l'erreur mets un msgbox (nomuser_G ou nomUsser_G)...

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
RV71
Messages postés
507
Date d'inscription
mardi 14 avril 2020
Statut
Membre
Dernière intervention
27 juin 2022
31
Modifié le 5 sept. 2020 à 11:35
Aussi, pourquoi tu déclares ta variable isconnect au niveau du module et une seconde fois dans les évènements du form...
0
Bonjour
merci Beaucoup pour votre remarque
2- par ce que j' ai déclare Option Explicit
merci infiniment
mon problème était erreur orthographe
grâce a vous je m'éclairé
0
yg_be
Messages postés
19554
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
30 juin 2022
1 129
5 sept. 2020 à 12:22
peux-tu alors marquer la discussion comme résolue?
0
Nizar1969 > yg_be
Messages postés
19554
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
30 juin 2022

5 sept. 2020 à 12:27
Bonjour
merci
Ok
0