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 :

Lancement Requête SQL en VBA avec résultat dans un autre Contrôle


Sujet :

VBA Access

  1. #21
    Membre chevronné Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 419
    Points : 2 178
    Points
    2 178
    Par défaut
    Et comme ça?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With MaBase.OpenRecordset(SQL)
    If Not .EOF Then
        [Forms]![SF_ML].txt_mailbox.Value = Replace(CStr(Split(.Fields("mail_box"), "#mailto:")(1)), "#", "")
    End If
    End With

  2. #22
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    non toujours pas,

  3. #23
    Membre chevronné Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 419
    Points : 2 178
    Points
    2 178
    Par défaut
    testons comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With MaBase.OpenRecordset(SQL)
    If Not .EOF Then
        [Forms]![SF_ML].txt_mailbox.Value = Split(Split(.Fields("mail_box"), "#mailto:")(1), "#")(0)
    End If
    End With

  4. #24
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Bonjour à tous,

    merci Thumb down, ça marche avec cette ligne ci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     [Forms]![SF_ML].txt_mailbox.Value = Replace(CStr(Split(.Fields("mail_box"), "#mailto:")(1)), "#", "")
    J'ai du foirer en copiant lors du premier essai et j'ai retenté ce matin et ça fonctionne

    Merci pour ta patience.

    Belle journée à Tous 🌞

  5. #25
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Bonjour à Tous,

    Je reviens sur ce poste car avec quelques tests, je constate que ma requête n’est pas fiable ☹


    Le controle “txt_sigl_depart » contient en général des sigle à 12 ou 20 divisions XXXX/XXX/XXX/XXX/….

    La requête aujourd’hui ne me donne pas le bon résultat lorsque je suis confronté à des sigles proches ex :

    PREV/DIR/CCM/… la mail box remontée est bien PREV@toto.com

    PREV/FRA/DOZ/MAN et …..mais pour ce cas non c’est toujours PREV@toto.com au lieu de PREV_FRA@toto.com

    Du coup j’ai ajouté à ma table un champs supplémentaire « nbcar_cherche » pour indiquer sur combien de caractères il faut faire la recherche

    Mais là je pêche sur la façon dont construire la requête ☹

    Voici le code complet

    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
    Private Sub lst_manag_depart_LostFocus() 'Lancement de la sélection MailBox avec résultat dans le champs Mailbox périmètre
     
    Dim MaBase As DAO.Database
    Dim SQL As String
     
    Set MaBase = CurrentDb
    With [Forms]![SF_ML] 'requete qui va chercher le prérimetre par rapport au département sélectionné
        SQL = "SELECT TG_mail_box.mail_box" & _
        " FROM TG_perimetre INNER JOIN TG_mail_box ON TG_perimetre.IDperimetre = TG_mail_box.IDperimetre" & _
        " WHERE (((TG_perimetre.perimetre)=Left('" & ![txt_sigl_depart] & "',8) Or (TG_perimetre.perimetre)=Left('" & ![txt_sigl_depart] & "',4)));"
     
    End With
     
    With MaBase.OpenRecordset(SQL) ' déclenche la requete
    If Not .EOF Then 'copie le résultat dans le champ Mailbox et retire les éléments "indésirables"
            [Forms]![SF_ML].txt_mailbox_perimetre.Value = .Fields("mail_box")
    End If
    End With
     
                MaBase.Close
                Set MaBase = Nothing
     
    End Sub
    Ci-dessous la table TG_perimetre avec des données fictives pour étayer l’exemple

    ID Périmètre nbcar_cherche mail_box
    1 DIRE 4 DIRE@toto.com
    2 DIRE/COM 8 DIRE_COM@toto.com
    3 PREV 4 PREV@toto.com
    4 PREV/FRA 8 PREV_FRA@toto.com
    5 BSUD 4 BSUD@toto.com
    6 BSUD/DIR 8 BSUD_DIR@toto.com
    7 BSUD/PSX 8 BSUD_PSX@toto.com
    8 BSUD/XBO 8 BSUD_XBO@toto.com
    9 BSUD/CCP 8 BSUD_CCP@toto.com
    10 BSUD/PIC 8 BSUD_PIC@toto.com
    11 BSUD/REG 8 BSUD_REG@toto.com
    12 BSUD/SEG 8 BSUD_SEG@toto.com
    13 BSUD/PIT 8 BSUD_PIT@toto.com
    14 BSUD/OCS 8 BSUD_OCS@toto.com
    15 LOOP 4 LOOP@toto.com
    16 XBSE 4 XBSE@toto.com
    17 BSII 4 BSII@toto.com
    18 ZTRA 4 ZTRA@toto.com

    Je vous remercie pour votre aide

  6. #26
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Bonjour à tous,

    Loin de moi de croire que vous pourriez faire le boulot à ma place.

    Je cherche et j'essaye avec mes petites connaissances.

    Je suis reparti avec un autre code sans passer par une requête en me disant que cela serait plus simple.

    J'abandonne le champs "nbcar_cheche" de la table sitée au dessus et penses qu'il est préférable de comparer en premier les 8 premiers caractères et ensuite les 4 premiers caractères.

    Bon ça ne fonctionne pas évidement mais pouvez-vous me guider et me dire si cette démarche est bonne?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub lst_manag_depart_LostFocus()
     
    if Left('" & ![txt_sigl_depart] & "',8) = TG_perimetre.perimetre then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = .Fields("mail_box")
     
    elseif Left('" & ![txt_sigl_depart] & "',4) = TG_perimetre.perimetre then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = .Fields("mail_box")
     
    end if
     
    End sub
    Je vous remercie et vous souhaite une belle journée 🌞

  7. #27
    Membre chevronné Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 419
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    Personnellement je n'ai pas compris !

    Il serait préférable que tu nous donnes des exemples de mails , que tu nous donnes la relation avec ton tableau et enfin le résultat escompté !

    Tu parles de 4,8,20 Tec. Mais je ne vois pas les relations avec ta demande.

  8. #28
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Désolé, je pensais être clair.

    Le controle “txt_sigl_depart » peut contenir des sigle à 12 ou 20 divisions XXXX/XXX/XXX/XXX/…. ex: PREV/FRA/DOZ/MAN

    J'ai une table qui gère les périmètre (données fictives pour étayer l’exemple):

    ID Périmètre nbcar_cherche mail_box
    1 DIRE 4 DIRE@toto.com
    2 DIRE/COM 8 DIRE_COM@toto.com
    3 PREV 4 PREV@toto.com
    4 PREV/FRA 8 PREV_FRA@toto.com
    5 BSUD 4 BSUD@toto.com
    6 BSUD/DIR 8 BSUD_DIR@toto.com
    7 BSUD/PSX 8 BSUD_PSX@toto.com
    8 BSUD/XBO 8 BSUD_XBO@toto.com
    9 BSUD/CCP 8 BSUD_CCP@toto.com
    10 BSUD/PIC 8 BSUD_PIC@toto.com
    11 BSUD/REG 8 BSUD_REG@toto.com
    12 BSUD/SEG 8 BSUD_SEG@toto.com
    13 BSUD/PIT 8 BSUD_PIT@toto.com
    14 BSUD/OCS 8 BSUD_OCS@toto.com
    15 LOOP 4 LOOP@toto.com
    16 XBSE 4 XBSE@toto.com
    17 BSII 4 BSII@toto.com
    18 ZTRA 4 ZTRA@toto.com

    Mon critère de recherche est donc sur le champs "périmètre" de ma table "TG_perimetre" auquel est associé une mailbox générique champs "mail_box"

    Je cherche donc par le biais d'un gauche de 8 caractères puis d'un gauche de 4 caractères de faire le rapprochement entre le controle “txt_sigl_depart » qui contient une chaine de caractères plus grande que le périmètre afin d'y associer la mail box concernée et de la faire remonter dans le controle "txt_mailbox_perimetre".

    La subtilité est que dans ma table de gestion des périmètre, il y a des sigles proches ex:

    ID Périmètre nbcar_cherche mail_box
    3 PREV 4 PREV@toto.com
    4 PREV/FRA 8 PREV_FRA@toto.com

    Donc si j'ai des services avec les sigles ci-dessous:

    PREV/DIR/CCM/…
    PREV/FRA/DOZ/MAN

    J'ai donc besoin d'avoir un critère fin afin que se soit la bonne MailBox qui reçoive le mail

    Voici une illustration avec le formulaire pour être plus claire (champs en jaune concernés par ma recherche.

    Nom : ML.JPG
Affichages : 67
Taille : 66,7 Ko

    J'ai peur de ne pas pouvoir faire mieux en explication

  9. #29
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Bonjour à Tous,

    j'essaye toujours mais pas encore de résultat

    voici le dernier code utilisé mais j'ai une référence incorrecte au niveau du .Fields

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub lst_manag_depart_LostFocus()
    *
    if Left([txt_sigl_depart],8) = [TG_perimetre.perimetre] then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = .Fields("mail_box")
    *
    elseif Left([txt_sigl_depart],4) = [TG_perimetre.perimetre] then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = .Fields("mail_box")
    *
    end if
    *
    End sub
    merci pour votre aide

  10. #30
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 635
    Points : 14 606
    Points
    14 606
    Par défaut
    bonjour,
    .Fields() appartient à un objet de type RecordSet (une requête ou une table) non présent dans le code de l'évènement, regarde le post #25 tu y utilises une requête SQL pour obtenir les données de ce champ
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With MaBase.OpenRecordset(SQL)
    ...
    [Forms]![SF_ML].txt_mailbox_perimetre.Value =  .Fields("mail_box")
    ...
    End With
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  11. #31
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Bonjour tee_granbois,

    En fait, la requête ne me donnant pas satisfaction, je pars sur une nouvelle option.
    Et de ce fait je teste d'autres façons mais toujours soucis avec mes connaissances.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub lst_manag_depart_LostFocus()
    *
    if Left([txt_sigl_depart],8) = [TG_perimetre.perimetre] then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = .Fields("mail_box")
    *
    elseif Left([txt_sigl_depart],4) = [TG_perimetre.perimetre] then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = .Fields("mail_box")
    *
    end if
    Je comprends que .fields n'est pas approprié mais n'arrive pas à trouver l'argument qui va bien

  12. #32
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 635
    Points : 14 606
    Points
    14 606
    Par défaut
    d'accord, mais où est le champ mail_box ?
    si il n'est pas dans le formulaire, il faut bien aller le chercher dans la table où il se trouve
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  13. #33
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Bonjour à Tous,

    merci tee_grandbois.

    Le champ mail_box est dans la table TG_perimetre.

  14. #34
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 635
    Points : 14 606
    Points
    14 606
    Par défaut
    et cette table est-elle la source du formulaire ?
    si ce n'est pas le cas, il faut bien utiliser soit une requête dans un Recordset (voir l'instruction: MaBase.OpenRecordset(SQL) et tout le code associé avant et après), soit une fonction de domaine (DLookup("mail_box";"TG_perimetre","ici la condition where si besoin")) pour ramener ce champ et récupérer ce qu'il contient, car depuis VBA pour avoir accès à d'autres sources de données que celles du ou des formulaires ouverts, il faut utiliser une de ces 2 méthodes, ou alors faire en sorte d'inclure la table TG_perimetre dans la requête source d'un des formulaires ouverts
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  15. #35
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    Merci tee_granbois,

    Ce matin j'ai tenté cela mais je pense qu'il manque quelque chose ou que ce n'est pas bien formulé.

    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
    Private Sub lst_manag_depart_LostFocus() 'Lancement de la sélection MailBox avec résultat dans le champs Mailbox périmètre
     
    Dim MaBase As DAO.Database
     
    MaBase.OpenRecordset
     
    Dim boxmail8 As String
    Dim boxmail4 As String
     
    boxmail8 = Dlockup("mail_box", "TG_perimetre", "([txt_sigl_depart],8)")
    boxmail4 = Dlockup("mail_box", "TG_perimetre", "([txt_sigl_depart],4)")
     
    If Left([txt_sigl_depart], 8) = [TG_perimetre.perimetre] Then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = boxmail8
    *
    ElseIf Left([txt_sigl_depart], 4) = [TG_perimetre.perimetre] Then
    [Forms]![SF_ML].txt_mailbox_perimetre.Value = boxmail4
    *
    End If
     
    End Sub

  16. #36
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 635
    Points : 14 606
    Points
    14 606
    Par défaut
    commence déjà par répondre aux questions qu'on te pose car on ne sait toujours pas si la table TG_perimetre est la source d'un formulaire ou sous-formulaire
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  17. #37
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    désolé, non mon formulaire ne contient que des contrôles indépendants

  18. #38
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 635
    Points : 14 606
    Points
    14 606
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim MaBase As DAO.Database
     
    MaBase.OpenRecordset
    d'accord mais quel Recordset vas-tu ouvrir si tu ne le définis pas avant ? regarde les posts du début, tu ne vois pas qu'il te manque quelque chose ? tu as pourtant réussi à le faire au départ même si cela ne fonctionnait pas, Thumbdown t'a donné la solution par la suite.
    Par contre si tu veux utiliser DLookup, pas de problème, encore faut-il que tu comprennes comment fonctionne le 3ème paramètre (la clause WHERE)
    si tu dois comparer ceci: ([txt_sigl_depart],8) à quelque chose du formulaire, il faut lui préciser:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    boxmail8 = Dlockup("mail_box", "TG_perimetre", "([txt_sigl_depart],8)=""" & [forms]![Nomduformulaire]!Nomducontrole & """")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Left([txt_sigl_depart], 8) = [TG_perimetre.perimetre]
    ici, tu ne peux pas comparer un champ du formulaire avec la table directement, il faut passer par un Recordset ou une fonction de domaine
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  19. #39
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 635
    Points : 14 606
    Points
    14 606
    Par défaut
    Citation Envoyé par mgascult Voir le message
    désolé, non mon formulaire ne contient que des contrôles indépendants
    et comment remplis-tu tous les contrôles, à la main ?

    Nom : ML.JPG
Affichages : 41
Taille : 66,7 Ko
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  20. #40
    Membre régulier Avatar de mgascult
    Homme Profil pro
    Logistique Immobilière
    Inscrit en
    Août 2013
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Logistique Immobilière
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 414
    Points : 106
    Points
    106
    Par défaut
    merci tee_grandbois,

    Désolé pour tout ces échanges complexes.

    La solution que m'avait apporté Thumbdown fonctionnait mais après avoir fait plusieurs tests, les résultats n'étaient pas toujours fiables car il y avait des Directions dont les 4 premiers caractères étaient identiques (il fallait affiner).
    Il m'a donc fallut abandonner cette option.
    Mon choix c'est donc porté sur ce dernier code qui me semble plus pertinent.

    Je rentre en conf dans 10 minutes, je testerai cela demain.

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

Discussions similaires

  1. [XL-2010] ACCESS-EXCEL-VBA : Requête SQL et intégration du résultat dans un userform
    Par marie_111 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 29/04/2019, 10h26
  2. Réponses: 11
    Dernier message: 15/10/2017, 13h35
  3. [AC-2013] Comment bien rédiger une requête SQL en VBA avec des critères
    Par alexdre dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 18/08/2016, 10h21
  4. Requête sql multi-source avec jointure en pur VBA dans excel
    Par guidav dans le forum Général VBA
    Réponses: 1
    Dernier message: 21/09/2013, 20h33
  5. [AC-2007] Requête SQL en VBA avec Date
    Par soprano6217 dans le forum VBA Access
    Réponses: 5
    Dernier message: 02/04/2009, 14h47

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