IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

autoriser modification sous formulaire


Sujet :

VBA Access

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut autoriser modification sous formulaire
    Bonjour, je voudrais juste savoir s'est quoi le code vba pour autoriser la modification des champs de mon sous formulaire !

    J'explique plus en détail, car sinon tout le monde va me dire dans le détail tu mets modif autorisé a oui !
    J'ai un formulaire avec un sous formulaire et tout sa est bloqué, je voudrais qu'en appuyant sur le bouton que j'ai créé les propriétés changent et qu'on puisse modifier les champs du sous-formulaire

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Points : 79
    Points
    79
    Par défaut
    si j'ai bien compris ton probléme, tu as crée un bouton dans ton formulaire principal et tu veux que ce même bouton autorise la modification des données sur ton sous formulaire ?

    si c'est bien ça, tu met le code suivant sur l'évenement clique du bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Nom_du_sous_formulaire.Locked = false

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut
    Oui c'est ca, mais malheureusement ca ne fonctionne pas !
    Aucune erreur, mais modif toujours impossible

  4. #4
    Invité
    Invité(e)
    Par défaut
    essaies plutot : me.monSF.AllowEdits = true

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Points : 79
    Points
    79
    Par défaut
    tu n'as pas fait d'opération de calcul dans la source de données de ton sous formulaire (ex : select sum...etc) ?

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    bonsoir
    les principales sont effectivement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Commande24_Click()
    Me.sous_formulaire.Enabled = True ' false bloque le sous form
     
    Me.sous_formulaire.Locked = False 'true bloque la modif des enregistrements
     
    End Sub
    mais aussi les champs dans le sous formulaire peuvent être
    à Enabled et/ou Locked -
    il faut commencer par faire l'inventaire de ce qui est bloqué
    bonne chasse

  7. #7
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut
    bonjour messieurs, tout d'abord merci de m'aider, mais aucune solution ne marche !

    ORL45 erreur dans le code, l'assistant ne trouve pas allowedits !

    Le vieux j'ai essayé les 2 combinés, ça ne marche toujours pas!

    pev15, non je n'ai pas de sum ou count, mais un de mes champs et calculer et mis a jour automatiquement a l'ouverture d'un autre formulaire, mais je pense pas que c'est ceci qui pose problème !

    Pensez vous qu'il faut que je change les propriété de mon formulaire, il n'y a pas quelque chose qui peut bloquer la modification ?

  8. #8
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut
    Rebonjour, apres beaucoup de recherche, tout était bloqué, j'ai donc tout autorisé dans les propriétés de mon formulaire, mais rien a faire, la modif reste toujours impossible, j'ai pourtant mi modif autorisé, entrée donnée autorisé,... Mais je ne sais pas pourquoi, la modification reste impossible, donc si quelqu'un a une idée de se qui peut bloquer !

  9. #9
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 92
    Points : 98
    Points
    98
    Par défaut
    Bonjour,

    Execute ta source de donnée directement comme requete. Tu peux ainsi vérifier si ta source autorise l'ajout ou non : si tu as une ligne vierge qui permet les ajouts, c'est bon. Dans le cas contraire les paramètres de ton formulaire n'y pourront rien et il faudra d'abord modifier ta requete de manière à ce que l'ajout y soit possible.

    Calculs et regroupements sont des élèments interdisant l'ajout

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Points : 79
    Points
    79
    Par défaut
    Je te conseillerai de vérifier ta requete qui est en source de données de ton formulaire.
    Essaye de l'éxécuter en feuille données dans access directement sans le formulaire.
    Puis regarde si tu peux modifier les valeurs des champs directmenent dans la feuilles de données . peut etre que tu as utilisé un distinct ou autre instruction sql bloquante...

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Points : 79
    Points
    79
    Par défaut
    oups, je répéte Damran

  12. #12
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut
    En effet, même en l'executant seul, je peux rien faire, mais pourtant apart un order by, qui ne gene en rien, j'ai rien du tout

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT PRODUITS.LibelleProd, TECHNIQUE.CodeCli, TECHNIQUE.NumEnrProd, TECHNIQUE.Emplacement, TECHNIQUE.TarifPref, TECHNIQUE.RefProd, CONTRAT.DateProchVisit
    FROM (CLIENT INNER JOIN TECHNIQUE ON CLIENT.CodeCli = TECHNIQUE.CodeCli) INNER JOIN ((CATEGORIE INNER JOIN CONTRAT ON CATEGORIE.CodeCatProd = CONTRAT.CodeCat) INNER JOIN PRODUITS ON CATEGORIE.CodeCatProd = PRODUITS.CodeCatProd) ON (PRODUITS.RefProd = TECHNIQUE.RefProd) AND (CLIENT.CodeCli = CONTRAT.CodeCli)
    ORDER BY TECHNIQUE.NumEnrProd;
    Voila ma requete !

  13. #13
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 92
    Points : 98
    Points
    98
    Par défaut
    Essaie dans un 1er temps de remplacer les "'INNER JOIN" par des "LEFT JOIN". En faisant attention : Les "flêches" (si tu utilise le requeteur visuel) doivent toutes partir de ta table principale (ici, CLIENT).

  14. #14
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut
    Impossible de faire des left join, jointure pas prise en compte, ou jointures externes ambigues !

  15. #15
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut
    pensez vous qu'il est possible de contourner se problème car même en essayant de modifier la requête, soit access la refuse, soit aucun changement !

  16. #16
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 350
    Points : 507
    Points
    507
    Par défaut
    après plusieurs recherche et test, je me suis rendu compte qu'en fait le problème venait de mon champ date visite qui est calculé a l'ouverture de mon formulaire d'accueil !
    Le problème est que j'ai absolument besoin d'afficher cette date !
    De plus, je veux que le sous formulaire soit bloqué a l'ouverture, puis qu'il se débloque sur clique de mon bouton, or quand je le bloque dans les propriétés, sur clique du bouton, rien ne se passe !

Discussions similaires

  1. Réponses: 7
    Dernier message: 21/08/2009, 21h19
  2. Detection modification sous-formulaire (dirty)
    Par Sam 069 dans le forum VBA Access
    Réponses: 3
    Dernier message: 14/06/2008, 12h11
  3. [formulaire] annuler modification sous-formulaire
    Par luz_negra dans le forum IHM
    Réponses: 1
    Dernier message: 04/12/2007, 03h06
  4. Réponses: 2
    Dernier message: 11/07/2006, 13h01
  5. Réponses: 23
    Dernier message: 13/10/2005, 16h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo