Requêtes paramétrées (SQL Server) & VBA

Bonjour tout le monde,

Pour commencer je tenais à remercier encore une fois toute la communauté de son aide jusque maintenant.

Cependant j'aurais encore une question concernant le vba et plus particulièrement le vba et le sql.

J'ai une base de données SQL Server 2012 et j'aimerai créer des requêtes avec des paramètres cependant je ne sais pas encore bien comment faire pour mettre automatiquement des paramètre en fonction des choix de l'utilisateurs.

Merci à tous et toutes de vos futurs aide.

Cordialement.

Petit up

Hello,

On n'a vraiment pas beaucoup d'infos

Avec le peu qu'on a, je propose

Dim oCnx As Connection

Dim sRequete As String

Dim oRS As Recordset

Set oCnx = New Connection

MsgBox "Mettre la chaîne de connexion"

oCnx.Open "Mettre la chaîne de connexion"

sRequete = "SELECT * FROM TableX where Nom = '" & Range("B3").Value & "' AND Prenom = '" & Range("C3").Value & "'"

Set oRS = oCnx.Execute(sRequete)

MsgBox oRS.Fields(1).Value

Set oRS = Nothing

oCnx.Close

Set oCnx = Nothing

Bouben

Bonjour tout le monde

Je remonte un peu mon problème car je n'ai toujours pas trouvé de solutiono.

Donc histoire d'être plus précis voici plus ou moins l'architecture du système que j'utilise.

============

Base de données

Table :

Personnes

Personnes_ID

Personne_Nom

Personne_Age

============

Et en parallèle j'ai un fichier Excel auquel j'aimerais pouvoir créer un formulaire dans lequel je demande l'age.

Et automatiquement la requête est envoyé au serveur et me retourne les informations désirées.

J'ai vu que l'on pouvait créé la requête directement dans Excel. Mon objectif est que la requête ne doit pas être visible pour l'utilisateur pour des raisons de sécurité.

Auriez-vous des propositions concernant une possible façon de faire ça je vous pris.

Encore merci de vos futures réponses.

Je vous souhaites à tous une très chaude journée

Bonsoir,

Cool pout les infos 8 mois apres☺.

Pour continuer sur le ton de l'humour, je repondrai bien : "voir ma réponse du mois d'octobre".

Ca doit répondre au besoin.

Si le code VBA est verrouillé, l'utilisateur ne verra pas la requête.

possibilité même de proteger la base par mot de passe et de mettre le mot de passe dans la chaîne de connexion.

N'ayant plus Excel à disposition, je ne peix pas fournir d'exemple.

On se revoit en 2016 pour la suite !

Bonne soirée

Bouben

Bonjour !

Merci personne du passé de m'avoir répondu !

Voici ma réponse de 2016 alors : Le seul problème de vba est que même les mots de passes peuvent être contourner plus ou moins facilement !

Bonsoir,

C'est bien la limite de vba : tout peut être craqué.

Il existe même des moyens de craquer le mot de passe vba si les macros sont protégées.

La seule solution : gérer la sécurité au niveau de la base SQL Server.

Les utilisateurs ayant le droit d'accéder sont déclarés au niveau de la base

La base SQL Server est en mode "Authentification Windows" (authentification par utilisateur)

Dans Excel, à l'ouverture, tu demandes à l'utilisateur de saisir son login (ou récupéré automatiquement à partir d'une API Windows "GetInfoUser", je ne connais plus le terme exact) et son password.

Tu transmets ces informations dans la chaîne de connexion (UID="[LOGIN ]; PWD={PASSWORD], ..., pareil, syntaxe à vérifier)

Et c'est SQL qui accepte ou rejette la connexion

Pas mieux

A plus

Bouben

Rechercher des sujets similaires à "requetes parametrees sql server vba"