Hello,

Grace à vous j'ai un système qui me permet de renvoyer une valeur qui vient d'Access sur un fichier Excel.

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
Function RecherchevAccess(ChampRecherche, valeurRecherche, champRetour, tbl, base)
    Dim GenereCSTRING As String
    Dim rs
Dim Connexion
 
 Fichier = base
 
GenereCSTRING = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Fichier & ";Persist Security Info=False"
  Set Connexion = CreateObject("ADODB.Connection")
 Connexion.Open GenereCSTRING
     Sql = "Select " & champRetour & " FROM " & tbl & " Where " & _
        ChampRecherche & "='" & valeurRecherche & "'"
    Set rs = CreateObject("ADODB.Recordset")
 rs.Open Sql, Connexion, 1, 3
    If rs.EOF = False Then RecherchevAccess = rs(champRetour)
    rs.Close
    Connexion.Close
End Function
Meme sur Sharepoint ça marche ce qui est le but.

Problème : Ça marche quand j’appelle une donnée qui est sur une table Access mais ce que je voudrais c'est que ça marche aussi sur une requête (toute simple sans paramètres). Quand je remplace le nom de la table par le nom de la requête ça marche pour la première ligne et tout le reste est en #valeur.

Je n'arrive pas à comprendre pourquoi même si j'ai vu un topic ou il est dit que table ou requete, ca ne change rien (https://www.developpez.net/forums/d1...excel-requete/)

Avez vous une idée ?

Merci d'avance