![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE. |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Invité de passage
![]() Date d'inscription: mars 2008
Messages: 7
|
Bonjour à tous,
Je souhaiterais crééer parametrer une requête (notamment le nom de la table) en vba. Ci- dessous ma "sub": Code :
Public Sub RunSplitMargeFI(nom_table1 As String) Dim bd As DAO.Database Set bd = CurrentDb Dim SigmaProvTech1 As DAO.QueryDef Set SigmaProvTech1 = bd.CreateQueryDef("SigmaProvTech1_VB", "SELECT DISTINCT " & nom_table1 & ".[Legal], " & nom_table1 & ".Reinsurance, " & nom_table1 & ".Partner, " & nom_table1 & ".Risk, Sum((" & nom_table1 & ".[Champ1] + " & nom_table1 & ".[Champ4] - " & nom_table1 & ".[Champ2] )/2) AS TotalReservesBase1" _ & "FROM " & nom_table1 & "" _ & "GROUP BY " & nom_table1 & ".[Legal], " & nom_table1 & "" _ & ".Reinsurance, " & nom_table1 & ".Partner, " & nom_table1 & ".Risk") Ce n'est pourtant pas la première requête de ce type que j'écris, mais je n'arrive toutefois pas à comprendre d'où vient le bug sachant que cette même requête a été préalablement testée en SQL avant de la retranscrire en VBA. Merci d'avance pour votre aide. Louis. |
|
|
|
|
|
#2 (permalink) |
|
Expert Confirmé Sénior
![]() |
salut,
peux-tu nous montrer ce qui ressort de la concaténation des variables avec un Debug.Print stp ?
__________________
Piou-Piou Poussin Developpeur Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute |
|
|
|
|
|
#3 (permalink) | |
|
Invité de passage
![]() Date d'inscription: mars 2008
Messages: 7
|
Citation:
Oui biensûr pour le log V1 Code :
SELECT DISTINCT Table.[Legal], Table.Reinsurance, Table.Partner, Table.Risk, Sum((Table.[Champ1] + Table.[Champ4] - Table.[Champ2] )/2) AS TotalReservesBase1 FROM Table GROUP BY Table.[Legal], Table.Reinsurance, Table.Partner, Table.Risk Code :
SELECT DISTINCT Table.[Legal], Table.Reinsurance, Table.Partner, Table.Risk, Sum((Table.[Champ1] + Table.[ChaSELECT DISTINCT Table.[Legal entity], Table.Reinsurance, Table.Partner, Table.Risk, Sum((Table.[IBNR bop] + Table.[IBNR eop] + Table.[RBNS bop] + Table.[RBNS eop] + Table.[Claim handling reserve bop] + Table.[Claim handling reserve eop] + Table.[UPR bop]+Table.[UPR eop]+Table.[Unexpired Risk Reserve bop] + Table.[Unexpired Risk Reserve eop] + Table.[Active Life Reserve bop]+Table.[Active Life Reserve eop] + Table.[Mathematical Reserve bop] + Table.[Mathematical Reserve eop]+Table.[Premium Accruals bop] + Table.[Premium Accruals eop] - Table.[Dac bop] - Table.[Dac eop])/2) AS TotalReservesBase1FROM TableGROUP BY Table.[Legal entity], Table.Reinsurance, Table.Partner, Table.Risk mp4] - Table.[Champ2] )/2) AS TotalReservesBase1 FROM Table GROUP BY Table.[Legal], Table.Reinsurance, Table.Partner, Table.Risk |
|
|
|
|
|
|
#4 (permalink) |
|
Expert Confirmé Sénior
![]() |
bon ben faut revoir la V2, car IMO, elle ne passe pas même sous l'IHM Access
__________________
Piou-Piou Poussin Developpeur Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute |
|
|
|
|
|
#6 (permalink) |
|
Expert Confirmé Sénior
![]() |
la revoir ca signifie qu'elle est fausse, regarde le contenu
Code :
Table.[ChaSELECT DISTINCT...
pour les noms, pardon, c'est du jargon : - IMO = "In My Opinion" en anglais, soit "A Mon Avis" (AMA) - IHM = "Interface Homme Machine", ton environnement utilisateur, les fenetres Access dans lesquelles tu évolues. edit : de plus, le nom table est un nom dédié et spécifique au langage SQL, tu ne peux pas l'utiliser comme nom de variable.
__________________
Piou-Piou Poussin Developpeur Pas de question technique par MP, je ne réponds pas ![]() Mon perso ? Une vraie brute |
|
|
|
|
|
#7 (permalink) |
|
Membre à l'essai
![]() Date d'inscription: octobre 2007
Messages: 49
|
& "FROM " & nom_table1 & "" _
& "GROUP BY " & nom_table1 & ".[Legal], " & nom_table1 & "" _ & ".Reinsurance, " & nom_table1 & ".Partner, " & nom_table1 & ".Risk") Ne manque t-il pas un ";" ici = ".Risk";) |
|
|
|
|
|
#8 (permalink) | |
|
Invité de passage
![]() Date d'inscription: mars 2008
Messages: 7
|
Citation:
Merci pour ces informations (le jargon rentre Voici donc mon dernier debug: Code :
SELECT DISTINCT PR_2007Q2_a_1.[Legal entity], PR_2007Q2_a_1.Reinsurance, PR_2007Q2_a_1.Partner, PR_2007Q2_a_1.Risk, Sum((PR_2007Q2_a_1.[IBNR bop] + PR_2007Q2_a_1.[IBNR eop] + PR_2007Q2_a_1.[RBNS bop] + PR_2007Q2_a_1.[RBNS eop] + PR_2007Q2_a_1.[Claim handling reserve bop] + PR_2007Q2_a_1.[Claim handling reserve eop] + PR_2007Q2_a_1.[UPR bop]+PR_2007Q2_a_1.[UPR eop]+PR_2007Q2_a_1.[Unexpired Risk Reserve bop] + PR_2007Q2_a_1.[Unexpired Risk Reserve eop] + PR_2007Q2_a_1.[Active Life Reserve bop]+PR_2007Q2_a_1.[Active Life Reserve eop] + PR_2007Q2_a_1.[Mathematical Reserve bop] + PR_2007Q2_a_1.[Mathematical Reserve eop]+PR_2007Q2_a_1.[Premium Accruals bop] + PR_2007Q2_a_1.[Premium Accruals eop] - PR_2007Q2_a_1.[Dac bop] - PR_2007Q2_a_1.[Dac eop])/2) AS TotalReservesBase1FROM PR_2007Q2_a_1GROUP BY PR_2007Q2_a_1.[Legal entity], PR_2007Q2_a_1.Reinsurance, PR_2007Q2_a_1.Partner, PR_2007Q2_a_1.Risk En fait j'avais pas pensé a utilisé le debug pour reconvertir ma requete VBA en SQL et la faire tourner dans un "IHM" . Merci pour ton aide !!! Bonne soirée. Louis |
|
|
|
|
|
![]() |
![]() |
||
Requête SQL- > VBA
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|