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

IHM Discussion :

Changement de source d'un formulaire en VBA [AC-2007]


Sujet :

IHM

  1. #1
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 108
    Points : 49
    Points
    49
    Par défaut Changement de source d'un formulaire en VBA
    Bonjour,

    Je voulais savoir si quelqu'un connaît la syntaxe en vba pour changer la source d'un formulaire
    Doit on utiliser la méthode Row source ?
    Merci à tous
    Franck

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 227
    Points : 222
    Points
    222
    Par défaut
    Dans la feuille des propriétés de ton form, onglet Données, sur source puis F1

    Tout est là.

    Cordialement

    Bruno

  3. #3
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 108
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par bruno28 Voir le message
    Dans la feuille des propriétés de ton form, onglet Données, sur source puis F1

    Tout est là.

    Cordialement

    Bruno
    J'ai bien fait ce que tu indiquais , dans le formulaire, choisir la feuille de propriété de celui ci puis chercher l'onglet Données sur la source puis F1.
    Et bien cela m'indique 30 résultats pour accéder sur internet. Mais rien qui m'indique en vba dans une condition comment changer la source du formulaire si je clique sur un bouton de commande par exemple.
    Si tu peux m'éclairer ce sera avec joie.
    Franck

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    A toutes fins utiles, ce que l'on trouve avec F1 sur les versions précédentes :

    Exemple de propriété RecordSource (Source)@import url(/Office.css);
    Exemple de propriété RecordSource (Source)
    Dans le premier exemple, la table Clients est affectée à la propriété Source (RecordSource) d'un formulaire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms!frmClients.RecordSource = "Clients"
    Dans le deuxième exemple, la source d'enregistrements d'un formulaire est modifiée pour correspondre à un enregistrement de la table Clients déterminé par le nom de la société sélectionné dans la zone de liste modifiable lstmSociété. Cette dernière contient une instruction SQL qui retourne le numéro permettant d'identifier le client (dans la colonne liée) et le nom de la société. Le numéro du client est une donnée de type Texte.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub lstmSociété_AfterUpdate()
        Dim chNouvelEnregistrement As String
        chNouvelEnregistrement = "SELECT * FROM Clients "
        & "WHERE Code client = '" _
        & Me!lstmSociété.Value & "'"
        Me.RecordSource = chNouvelEnregistrement
    End Sub

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 227
    Points : 222
    Points
    222
    Par défaut
    re bonjour.

    Pas mieux que Jacques jean.
    C'est exactement ce que j'aurait mis. Mais, quand même, juste une question par curiosité, F1 ne fonctionne pas sous la version 2007??

    A bientôt.

    Bon courage

    Cordialement.

    Bruno

  6. #6
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 108
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par bruno28 Voir le message
    re bonjour.

    Pas mieux que Jacques jean.
    C'est exactement ce que j'aurait mis. Mais, quand même, juste une question par curiosité, F1 ne fonctionne pas sous la version 2007??

    A bientôt.

    Bon courage

    Cordialement.

    Bruno
    la touche F1 comme tu l'as expliqué en access 2007 ne fonctionne pas
    Pour info voici mon 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
    37
    Private Sub Commande1_Click()
    Dim FrmFolio As Form
    Dim strName As String
    Dim ctl As Control
    Dim SQLFolio As String
     
     
    Set FrmFolio = Application.CreateForm
    With FrmFolio
    .Caption = "visualisation folio"
    .Width = 5000
    .Section(acDetail).Height = 2000
    .NavigationButtons = False
    .RecordSelectors = True
    .AutoCenter = True
    strName = FrmFolio.Name
    End With
    Set ctl = Application.CreateControl(strName, acTextBox, , "", "", 2000, 500, 2500, 300)
     
    With ctl
    .Name = "Numéro"
    .BackColor = vbWhite
    .ForeColor = vbBlack
    .FontBold = True
     
    End With
     
    Set ctl = Application.CreateControl(strName, acLabel, , "", "", 500, 500, 1500, 300)
    With ctl
    .Name = "lblNuméro"
    .Caption = "Numéro de l'étiquette"
    End With
    SQLFolio = "select* FROM TblFolio;"
    Forms!FrmFolio.RecordSource = SQLFolio
     
     
    End Sub
    le problème c'est qu'access m'indique l'erreur 2450 Micosoft ne trouve pas le formulaire "FrmFolio" auquel il fait référence dans un code visual basic.

    en début de code je créé bien le FrmFolio pourquoi quand j'introduis la source de ce formulaire par une SQL( dernière ligne de code) il m'indique cette erreur ?
    Si quelqu'un as une idée ....

    A+
    Franck

  7. #7
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 108
    Points : 49
    Points
    49
    Par défaut
    Ci dessous la réponse. En faite mon SQL était mal positionné et aussi le record source .
    Merci à Bruno28 et Jacques jean qui m'ont permis de trouver la soulution.
    Une bonne journée à tous
    Franck

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim FrmFolio As Form
    Dim strName As String
    Dim ctl As Control
    Dim Fi As Field
    Dim SQLFolio As String
     
    SQLFolio = "select* FROM TblFolio;"
     
    Set FrmFolio = Application.CreateForm
    With FrmFolio
    .DefaultView = 2
    .RecordSource = SQLFolio
    .Caption = "visualisation folio"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Problème lors du changement de la source d'un formulaire
    Par DeFCrew dans le forum IHM
    Réponses: 3
    Dernier message: 03/12/2010, 15h53
  2. [AC-2007] Source d'un Field en vba dans un formulaire
    Par franckimmo dans le forum IHM
    Réponses: 6
    Dernier message: 24/02/2010, 09h32
  3. Réponses: 0
    Dernier message: 11/09/2009, 09h45
  4. Réponses: 6
    Dernier message: 16/03/2009, 08h57
  5. [VBA-E] changement d'état d'un formulaire
    Par ooyeah dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 19/03/2007, 09h54

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