Didacticiel sur les macros Access, leurs crtières et exécution automatique

แชร์
ฝัง
  • เผยแพร่เมื่อ 31 ต.ค. 2024

ความคิดเห็น • 53

  • @abdelazizchelbi7531
    @abdelazizchelbi7531 7 ปีที่แล้ว +2

    Sincèrement, à chaque fois que j'entends le mot MACRO, je devrais me préparer et me concentrer davantage pour voir défiler des listes de commandes et de contrôles les uns plus compliqués que les autres et une série d'instructions longues et détaillées.
    Mais avec vous, cher professeur, on arrive, en moins de 1/4 d'heure, à poser des macros d'affichage de formulaire, de contrôle de l'utilisateur, de types d'accès, ... et le tout, avec une simplicité étonnante.
    Je peux, ou plutôt, je dois vous applaudir et de toutes mes forces : C'EST G_E_N_I_A_L

    • @abdelazizchelbi7531
      @abdelazizchelbi7531 7 ปีที่แล้ว +1

      Si vous permettez encore une fois, de poser la question suivante :
      Dans la macro 'Si_form_clts_cmdes', on a utilisé l'action 'DéfinirFiltre' pour ajouter la condition 'Where' alors que cette dernière pourrait être ajoutée dans l'action 'OuvrirFormulaire' ! Quelle est la différence (mis à part que le formulaire s'affiche ou non avec la boite de dialogue demandant le nom du client) ?
      Remarque : la saisie dans la boite de dialogue ne respecte pas la casse (nom du client ou mot de passe)
      Vous remerciant encore de votre patience

    •  7 ปีที่แล้ว

      Bonjour Abdelaziz, tout d'abord je commence comme il est de coutume par vous remercier pour votre suivi, vos retours et vos questions pertinentes. En réponse à votre question judicieuse sur l'action OuvrirFormulaire, en effet ici, pas de différence. L'objectif dans la formation était d'apprendre à créer soit même la condition Where, car elle ne se limite pas à l'action OuvrirFormulaire et s'avère précieuse dans de très nombreux cas. La boîte de dialogue qui s'ouvre est en effet une boîte de dialogue standard Windows. Donc on doit accepter le fait que certains réglages sont par défaut. Néanmoins ces critères ne sont pas sensibles à la casse. Lorsque nous aborderons VBA Access, nous fabriquerons nous même les interfaces de communication, avec toutes les précisions que nous souhaitons.

  • @marvinnormand9
    @marvinnormand9 5 ปีที่แล้ว +1

    Bonsoir Stéphane,
    Après plusieurs tests, j'avais omis de paramétrer sur MULTILINE. Maintenant, cela fonctionne aussi bien avec & vbcrlf & ou chr(10) & chr(13).
    Merci de m'avoir mis sur la piste. Cela me permettra d'améliorer mon projet.
    Belle soirée et encore MERCI !
    Au besoin, je ferai encore appel....
    MN

    •  5 ปีที่แล้ว

      Ravi que vous ayez débloqué la situation Marvin et merci pour votre message en retour.

  • @GeorgeBander
    @GeorgeBander 7 ปีที่แล้ว +1

    Ouha !! Super professeur ! Je le prépare dès demain, car ce soir trop de travaille ! Merci en tous cas pour ce volet sur Access !! bonne et excellente soirée ! MERCI

  • @jean-christophepeeters5820
    @jean-christophepeeters5820 2 ปีที่แล้ว

    Bonjour, je suis en train de suivre la formation que je vous ai acheté, le livre sur Access version2 et c'est tout bonnement génial, chaque chapitre à un lien vers une de vos vidéos, et vous donnez les bases de données exemple. J'en reviens pas de votre travail, si clair, si bien documenté, un immense MERCI

    •  2 ปีที่แล้ว

      Bonjour Jean-Christophe. Merci infiniment pour l'intérêt que vous portez à ces travaux et pour ce superbe témoignage que vous m'offrez là. Il s'agit d'une grande source de plaisir et de satisfaction.

  • @GeorgeBander
    @GeorgeBander 7 ปีที่แล้ว +1

    Voilà ! Super une fois de plus !! J'adore Access, et j'ai pas mal de base que je vais pouvoir améliorer !! Merci cher professeur !! Bonne journée...!!

    •  7 ปีที่แล้ว +1

      Bonsoir Gérard, je suis content que celui ci vous ait plu. Access est déjà très puissant, les macros et leur paramétrage permettent d'améliorer les interactions entre les objets de bases de données, de personnaliser les requêtes et environnements restitués et d'automatiser les actions. Merci beaucoup Gérard pour votre retour. Excellente soirée à vous.

  • @joeanjoean499
    @joeanjoean499 7 ปีที่แล้ว +1

    Infiniment merci pour votre réponse.
    C'est avec beaucoup de plaisir que je suis vos vidéos. Aussi je vous suggère de faire d'autres vidéo ACCESS relatives
    1: Menu général pour l’exécution des formulaires et des états
    2/ Une vidéo de première page à l’exécution du programme avec mot de passe utilisateur pour accéder au programme principal
    Merci de votre système d'enseignement précis et complet en un temps très court

    •  7 ปีที่แล้ว

      Merci beaucoup à vous, je compte en effet pousser plus loin sur les formations Access, d'autres sont prévues et je tiendrai compte de vos précieux conseils car beaucoup sont susceptibles de s'y intéresser.

  • @khouidermiloudisk
    @khouidermiloudisk 5 ปีที่แล้ว +1

    شكرا كثيرا على درسك الجيد

    •  5 ปีที่แล้ว

      Je vous en prie, merci à vous pour ce message en retour.

  • @abdelkrimderreche3374
    @abdelkrimderreche3374 3 ปีที่แล้ว +1

    Merci

    •  3 ปีที่แล้ว +1

      Avec plaisir Abdelkrim. Merci pour ce message.

  • @MokhtarALG
    @MokhtarALG 7 หลายเดือนก่อน +1

    Excellente formation qui m'aide beaucoup à développer mon application, merci! J'ai une question: je voudrais qu'une macro s'exécute automatiquement selon une condition relative à un champ "Date" contenu dans une table. Au fond, ce serait qu'à chaque fois que la date du champ est inférieure à la date du jour, la macro s'exécute pour archiver certains enregistrements. J'ai cherché sur Internet mais sans succès jusqu'à présent! Avez-vous une piste à me proposer?

    •  7 หลายเดือนก่อน

      Bonjour Mokhtar et merci pour ce message. Je propose quelques sujets manipulant les dates et les heures :
      www.bonbache.fr/alertes-sur-les-dates-anniversaires-avec-access-825.html
      www.bonbache.fr/calculer-l-age-exact-en-vba-access-difference-de-dates-878.html
      www.bonbache.fr/ouvrir-un-formulaire-access-a-une-heure-precise-en-vba-1146.html
      Après il n'y a plus qu'à intégrer dans une macro AutoExec pour obtenir la solution que vous souhaitez.

    • @MokhtarALG
      @MokhtarALG 7 หลายเดือนก่อน +1

      @ Merci pour la réponse! J'ai pensé à cette solution, cependant la macro AutoExec ne s'exécute qu'à l'ouverture de la base de données, alors que je voudrais qu'elle s'exécute chaque jour, indépedemment de l'ouverture/ferméture de la base de données.

    •  7 หลายเดือนก่อน

      ​@@MokhtarALGIl faut utiliser une tâche Windows pour déclencher l'exécution périodique d'un accdr par exemple.

    • @MokhtarALG
      @MokhtarALG 7 หลายเดือนก่อน +1

      @ OK, merci Stephane. Bonne fin de journée,

    •  7 หลายเดือนก่อน

      ​@@MokhtarALG Je vous en prie, bonne journée à vous également.

  • @frogeregis
    @frogeregis 7 ปีที่แล้ว +1

    3♥♥♥

  • @jacquesannette6052
    @jacquesannette6052 8 หลายเดือนก่อน +1

    Bonjour je ne trouve pas le lien pour la facturation Merci

    •  8 หลายเดือนก่อน

      Bonjour, la solution complète est donnée à cette adresse :
      www.bonbache.fr/application-vba-access-pour-facturer-les-clients-555.html

  • @cathbubu3879
    @cathbubu3879 3 ปีที่แล้ว +1

    Bonsoir,
    Je cherche une macro ou autre moyen pour que la base de donnée se ferme automatiquement si l'utilisateur est inactif pendant 5 min.
    Pourriez-vous m'aider ?

    •  3 ปีที่แล้ว

      Bonjour Cath Bubu. Vous pouvez exploiter la fonction VBA Timer dans une macro autoExec pour lancer la procédure au démarrage. Cette fonction Timer gère les intervalles de temps. Ceux ci doivent être déclarés en variables publiques pour les gérer dans d'autres contextes. Et précisément, si une action est entreprise sur le formulaire (Au clic, Après MAJ etc...), ces incréments doivent être réinitialisés. Sinon le temps file et la procédure initiale est en mesure à échéance de fermer la base de données.
      Cette formation montre, entre autres, comment exploiter cette fonction Timer :
      www.bonbache.fr/archiver-les-donnees-en-visual-basic-access-178.html

  • @marvinnormand9
    @marvinnormand9 5 ปีที่แล้ว +1

    Bonjour Stéphane,
    Super tuto et explications très claires !
    Question: j'ai suivi le tuto et je l'ai appliqué à une de mes créations. J'ai un mot de passe ADMIN et les autres USERS sont en ReadOnly. Super ça marche !
    Maintenant j'ai attribué un mot de pass à tous les users.
    Comment continuer (écrire) la procédure dans la macro pour dire que si c'est un users avec un mot de passe précis qu'il n'ai accès qu'en ReadOnly avec mesage box USERS (introduisez votre mot de passe) et que si il tape un autre mot de passe que je leur ai attribué qu'il me donne un message box avec une erreur.
    Bien à toi,
    Marc,
    Merci

    •  5 ปีที่แล้ว +1

      Bonjour Marvin et merci beaucoup pour votre message. Dans ces conditions, je préconise le VBA pour modifier la propriété Entrée de données du formulaire à la volée selon le mot de passe saisi.

    • @marvinnormand9
      @marvinnormand9 5 ปีที่แล้ว

      @ Bonjour Stéphane,
      Encore une petite question ?
      Pouvez-vous me dire comment je peux écrire un LBLMESSAGE sur 2 lignes (1ère en français et la seconde en néerlandais) dans un formulaire (vba) ?
      Voici un morceau de mon code:
      If Len(Me.Cbx_fournisseur) = 0 Then
      lblMessage = "Veuillez saisir le NOM DU CLIENT et cliquez sur VALIDER !"
      Me.Cbx_fournisseur.SetFocus
      MsgBox "Veuillez suivre les instructions en haut du formulaire !" & vbCrLf & "Volg de instructies bovenaan het formulier!", vbInformation + vbOKOnly, "AJOUTER UN ARTICLE A LA COMMANDE - ORDER"

    •  5 ปีที่แล้ว

      @@marvinnormand9 Bonjour Marvin, dans le VBA il faut simuler le retour chariot pour simuler la saisie sur deux lignes. Les
      et
      sont décodées par la fonction Chr. Chr(13) et Chr(11) de mémoire mais à vérifier.

    • @marvinnormand9
      @marvinnormand9 5 ปีที่แล้ว

      @ Je viens de tester avec Chr.... et vbcrlf. mais cela ne fonctionne pas.
      C'est dans le lblMessage "texte" que je souhaite mettre sur 2 lignes dans le forms vba. Comment l'écrire ?
      Merci

    •  5 ปีที่แล้ว

      @@marvinnormand9 Je l'ai bien compris Marvin. Comme je vous le disais, je n'ai pas encore eu l'occasion de tester et de me pencher sur ce cas. Vous pouvez aussi choisir un textbox avec la propriété multiligne, je ne sais plus exactement son nom. Avec une mise en forme adaptée, l'illusion sera parfaite.

  • @قاعدةبياناتالمصنفاتالنثرية

    Bonjour, sur Access 2007 j' utilise AppliquerFiltre (avec les mêmes critères) mais le formulaire s'ouvre sans FILTRAGE, est il nécessaire d'avoir la version 2010 pour le faire ?

    •  8 ปีที่แล้ว

      Bonjour, de mémoire il n'y a pas de raison que cela ne fonctionne pas. Etes vous sûr que le filtre est appliqué sur le bon champ et que les données sur lesquelles sont appliquées le filtre permettent bien d'être triées sur ce critère ?

    • @قاعدةبياناتالمصنفاتالنثرية
      @قاعدةبياناتالمصنفاتالنثرية 8 ปีที่แล้ว +1

      Merci de m'avoir recontacté, je travaille actuellement sur les listes déroulantes, j'y reviendrai après au Filtre, pour rappel je réside aussi en Isère

  • @baladichannel8919
    @baladichannel8919 6 ปีที่แล้ว +1

    salut est ce que je peux faire un raccourcis d'un formulaire sur le bureau

    •  6 ปีที่แล้ว

      Bonjour Monsieur, en quelques sortes oui vous pouvez mais pas directement un raccourci du formulaire. Vous pouvez créer un raccourci d'une application Access (accde) sur le bureau. Si celle-ci est configurée pour restreindre l'environnement et afficher le formulaire par défaut à l'ouverture (www.bonbache.fr/restreindre-les-autorisations-et-acces-a-une-base-de-donnees-98.html), vous avez bien un raccourci du formulaire sur le bureau.

  • @lilinbl7992
    @lilinbl7992 6 ปีที่แล้ว +1

    merci pour cette video tres bien expliqué ,
    j'aimerais savoir comment on peut lancer access avec un formulaire au demarage mais sans voir l'interface access merci

    •  6 ปีที่แล้ว +1

      Bonjour et merci pour votre message. Il faut en faire un fichier accde. Cette formation vus indiquera comment faire : www.bonbache.fr/restreindre-les-autorisations-et-acces-a-une-base-de-donnees-98.html

    • @lilinbl7992
      @lilinbl7992 6 ปีที่แล้ว

      merci pour votre réactivité , mais j'ai fais tout çà ce qui m’intéresserai si c'est possible c'est de ne pas voir en arrière plan l'interface Access mais juste le formulaire , comme si a l'ouverture il est masquer est seul le formulaire rest
      merci

    •  6 ปีที่แล้ว

      Une application Access fonctionne nécessairement sous Access et implique son démarrage. Si vous souhaitez développer une application dédiée, avec l’apparence que vous aurez configurée, vous devez utiliser DotNet avec VB.Net interrogeant des bases Access par exemple. Vous afficherez l'interface que vous aurez programmée.

    • @lilinbl7992
      @lilinbl7992 6 ปีที่แล้ว +1

      merci vais le faire

  • @earth5460
    @earth5460 7 ปีที่แล้ว +1

    Intéressant tutoriel mais comment faire pour que le mot de passe apparaît seulement en étoile ( astérisque ) ? quelle formule faudrait rajouter au générateur d'expression pour cacher le mot de passe ?

    •  7 ปีที่แล้ว

      Bonjour Big Man, le plus simple pour que le mot de passe soit masqué est d'attribuer un masque de saisie de type Password au contrôle TextBox du formulaire comme l'enseigne, entre autres cette formation :
      www.bonbache.fr/authentification-et-inscription-en-vba-access-195.html

    • @earth5460
      @earth5460 7 ปีที่แล้ว +1

      Bonjour Mr Rossetti; encore merci pour le tutoriel et la réponse à ma question, je ne manquerai pas de visualiser la vidéo

    •  7 ปีที่แล้ว

      Je vous en prie Big Man, c'est avec plaisir

  • @nicosgous6711
    @nicosgous6711 7 ปีที่แล้ว +1

    merci beaucoup!!!!! comment faire une macro pour enregistrer un nouveau client ?

    •  7 ปีที่แล้ว

      Bonjour Nicos, enregistrer un nouveau client de quelle façon ? En base de données ? A ajouter à la fin d'un tableau ?

    • @nicosgous6711
      @nicosgous6711 7 ปีที่แล้ว +1

      a ajouter a la suite tu tableau client

    •  7 ปีที่แล้ว

      Je pense qu'une macro automatique sera difficile à mettre en oeuvre dans la mesure où elle doit connaître les indices de ligne et de colonne ou l'insertion doit être réalisée. Les formules sont envisageables grâce à des fonctions de base de données permettant de d'abord savoir si le client n'existe pas déjà. Par le code VBA attaché à un bouton, c'est à mon sens encore plus simple. Il faut exploiter la méthode SpecialCells de l'objet Cells qui permet de retourner le dernier indice de ligne du tableau : Dim der_ligne = Cells.SpecialCells(xlCellTypeLastCell).Row. Les colonnes étant connues, il suffit d'écrire l'égalité pour inscrire le nouveau client, par exemple : Cells(der_ligne + 1, num_colonne).value = cells(ligne_client,colonne_client).value.

    • @nicosgous6711
      @nicosgous6711 7 ปีที่แล้ว +1

      merci beaucoup

    •  7 ปีที่แล้ว

      Je vous en prie