Creer un formulaire à partir d'une requête enregistrée via ODBC qui me permet de filtrer des données sur excel
2 réponses
francisco
Bonjour tout le monde
J'ai cette macro enregistée qui me permet via un lien ODBC à me connecter à
une base Access et d'obtenir le resultat de cette requete sur excel
La macro nommée requête me permet de filtrer des données et d'agir sur les
champs Grammage de la Table Ventes 1999 et sur le champs volume de la Table
Ventes 1999 La macro Requête se trouve sur excel ainsi que le resultat de la
requête ce que je voudrais apprendre à faire c'est créer un formulaire sur
excel ou je puisse choisir n'importe quel grammage un grammage de 70 75 120
130 par exemple et différents volume Comment je dois faire pour creer le
formulaire et qu'est ce que je dois modifier dans ma requête pour que les
grammages et les volummes soient considérés comme des variables Je sais que
je dois modifier cette partie de ma macro requête "WHERE
(Ventes_1999.Grammage=80) AND (Ventes_1999.Volume>7.24" , "7)") mais comment
faire pour la lier à un formulaire
Amicalement Francisco
La macro est la suivante
Sub requête()
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DBQ=C:\Documents and Settings\francisco\Mes
documents\test.mdb;DefaultDir=C:\Documents and Settings\francisco\Mes
documents;Dri" _
), Array( _
"ver={Driver do Microsoft Access (*.mdb)};DriverId=281;FIL=MS
Access;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransact" _
), Array("ions=0;Threads=3;UserCommitSync=Yes;")),
Destination:=Range("A1"))
.CommandText = Array( _
"SELECT Ventes_1999.CodeProduct, Ventes_1999.CodeConditionnement,
Ventes_1999.CodeCouleur, Ventes_1999.Grammage, Ventes_1999.PM,
Ventes_1999.Volume, Ventes_1999.AverageExMill, Ventes_1999.VariablesCost" _
, _
"s, Ventes_1999.FixedCosts, Ventes_1999.TonnesHeures" & Chr(13) & ""
& Chr(10) & "FROM `C:\Documents and Settings\francisco\Mes
documents\test`.Ventes_1999 Ventes_1999" & Chr(13) & "" & Chr(10) & "WHERE
(Ventes_1999.Grammage=80) AND (Ventes_1999.Volume>7.24" _
, "7)")
.Name = "Lancer la requête à partir de aa"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With
ActiveWindow.SmallScroll Down:=72
End Sub
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour tout le monde J'ai cette macro enregistée qui me permet via un lien ODBC à me connecter à une base Access et d'obtenir le resultat de cette requete sur excel La macro nommée requête me permet de filtrer des données et d'agir sur les champs Grammage de la Table Ventes 1999 et sur le champs volume de la Table Ventes 1999 La macro Requête se trouve sur excel ainsi que le resultat de la requête ce que je voudrais apprendre à faire c'est créer un formulaire sur excel ou je puisse choisir n'importe quel grammage un grammage de 70 75 120 130 par exemple et différents volume Comment je dois faire pour creer le formulaire et qu'est ce que je dois modifier dans ma requête pour que les grammages et les volummes soient considérés comme des variables Je sais que je dois modifier cette partie de ma macro requête "WHERE (Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" , "7)") mais comment faire pour la lier à un formulaire
Amicalement Francisco La macro est la suivante Sub requête() Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _ "ODBC;DBQ=C:Documents and SettingsfranciscoMes documentstest.mdb;DefaultDir=C:Documents and SettingsfranciscoMes documents;Dri" _ ), Array( _ "ver={Driver do Microsoft Access (*.mdb)};DriverId(1;FIL=MS Access;MaxBufferSize 48;MaxScanRows=8;PageTimeout=5;SafeTransact" _ ), Array("ions=0;Threads=3;UserCommitSync=Yes;")), Destination:=Range("A1")) .CommandText = Array( _ "SELECT Ventes_1999.CodeProduct, Ventes_1999.CodeConditionnement, Ventes_1999.CodeCouleur, Ventes_1999.Grammage, Ventes_1999.PM, Ventes_1999.Volume, Ventes_1999.AverageExMill, Ventes_1999.VariablesCost" _ , _ "s, Ventes_1999.FixedCosts, Ventes_1999.TonnesHeures" & Chr(13) & "" & Chr(10) & "FROM `C:Documents and SettingsfranciscoMes documentstest`.Ventes_1999 Ventes_1999" & Chr(13) & "" & Chr(10) & "WHERE (Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" _ , "7)") .Name = "Lancer la requête à partir de aa" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = True .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInfo = True .Refresh BackgroundQuery:úlse End With ActiveWindow.SmallScroll Down:r End Sub
Bonsoir,
Si le grammage est saisi dans une TextBox1 de ton formulaire, tu pourrais
essayer ce genre de syntaxe dans ta requête :
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjour tout le monde
J'ai cette macro enregistée qui me permet via un lien ODBC à me connecter à
une base Access et d'obtenir le resultat de cette requete sur excel
La macro nommée requête me permet de filtrer des données et d'agir sur les
champs Grammage de la Table Ventes 1999 et sur le champs volume de la Table
Ventes 1999 La macro Requête se trouve sur excel ainsi que le resultat de la
requête ce que je voudrais apprendre à faire c'est créer un formulaire sur
excel ou je puisse choisir n'importe quel grammage un grammage de 70 75 120
130 par exemple et différents volume Comment je dois faire pour creer le
formulaire et qu'est ce que je dois modifier dans ma requête pour que les
grammages et les volummes soient considérés comme des variables Je sais que
je dois modifier cette partie de ma macro requête "WHERE
(Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" , "7)") mais comment
faire pour la lier à un formulaire
Amicalement Francisco
La macro est la suivante
Sub requête()
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DBQ=C:Documents and SettingsfranciscoMes
documentstest.mdb;DefaultDir=C:Documents and SettingsfranciscoMes
documents;Dri" _
), Array( _
"ver={Driver do Microsoft Access (*.mdb)};DriverId(1;FIL=MS
Access;MaxBufferSize 48;MaxScanRows=8;PageTimeout=5;SafeTransact" _
), Array("ions=0;Threads=3;UserCommitSync=Yes;")),
Destination:=Range("A1"))
.CommandText = Array( _
"SELECT Ventes_1999.CodeProduct, Ventes_1999.CodeConditionnement,
Ventes_1999.CodeCouleur, Ventes_1999.Grammage, Ventes_1999.PM,
Ventes_1999.Volume, Ventes_1999.AverageExMill, Ventes_1999.VariablesCost" _
, _
"s, Ventes_1999.FixedCosts, Ventes_1999.TonnesHeures" & Chr(13) & ""
& Chr(10) & "FROM `C:Documents and SettingsfranciscoMes
documentstest`.Ventes_1999 Ventes_1999" & Chr(13) & "" & Chr(10) & "WHERE
(Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" _
, "7)")
.Name = "Lancer la requête à partir de aa"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:úlse
End With
ActiveWindow.SmallScroll Down:r
End Sub
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour tout le monde J'ai cette macro enregistée qui me permet via un lien ODBC à me connecter à une base Access et d'obtenir le resultat de cette requete sur excel La macro nommée requête me permet de filtrer des données et d'agir sur les champs Grammage de la Table Ventes 1999 et sur le champs volume de la Table Ventes 1999 La macro Requête se trouve sur excel ainsi que le resultat de la requête ce que je voudrais apprendre à faire c'est créer un formulaire sur excel ou je puisse choisir n'importe quel grammage un grammage de 70 75 120 130 par exemple et différents volume Comment je dois faire pour creer le formulaire et qu'est ce que je dois modifier dans ma requête pour que les grammages et les volummes soient considérés comme des variables Je sais que je dois modifier cette partie de ma macro requête "WHERE (Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" , "7)") mais comment faire pour la lier à un formulaire
Amicalement Francisco La macro est la suivante Sub requête() Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _ "ODBC;DBQ=C:Documents and SettingsfranciscoMes documentstest.mdb;DefaultDir=C:Documents and SettingsfranciscoMes documents;Dri" _ ), Array( _ "ver={Driver do Microsoft Access (*.mdb)};DriverId(1;FIL=MS Access;MaxBufferSize 48;MaxScanRows=8;PageTimeout=5;SafeTransact" _ ), Array("ions=0;Threads=3;UserCommitSync=Yes;")), Destination:=Range("A1")) .CommandText = Array( _ "SELECT Ventes_1999.CodeProduct, Ventes_1999.CodeConditionnement, Ventes_1999.CodeCouleur, Ventes_1999.Grammage, Ventes_1999.PM, Ventes_1999.Volume, Ventes_1999.AverageExMill, Ventes_1999.VariablesCost" _ , _ "s, Ventes_1999.FixedCosts, Ventes_1999.TonnesHeures" & Chr(13) & "" & Chr(10) & "FROM `C:Documents and SettingsfranciscoMes documentstest`.Ventes_1999 Ventes_1999" & Chr(13) & "" & Chr(10) & "WHERE (Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" _ , "7)") .Name = "Lancer la requête à partir de aa" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = True .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInfo = True .Refresh BackgroundQuery:úlse End With ActiveWindow.SmallScroll Down:r End Sub
francisco
Merci Frédéric Amicalement Francisco "Frédéric Sigonneau" a écrit dans le message de news:
Bonsoir,
Si le grammage est saisi dans une TextBox1 de ton formulaire, tu pourrais essayer ce genre de syntaxe dans ta requête :
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour tout le monde J'ai cette macro enregistée qui me permet via un lien ODBC à me connecter à
une base Access et d'obtenir le resultat de cette requete sur excel La macro nommée requête me permet de filtrer des données et d'agir sur les
champs Grammage de la Table Ventes 1999 et sur le champs volume de la Table
Ventes 1999 La macro Requête se trouve sur excel ainsi que le resultat de la
requête ce que je voudrais apprendre à faire c'est créer un formulaire sur
excel ou je puisse choisir n'importe quel grammage un grammage de 70 75 120
130 par exemple et différents volume Comment je dois faire pour creer le formulaire et qu'est ce que je dois modifier dans ma requête pour que les
grammages et les volummes soient considérés comme des variables Je sais que
je dois modifier cette partie de ma macro requête "WHERE (Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" , "7)") mais comment
faire pour la lier à un formulaire
Amicalement Francisco La macro est la suivante Sub requête() Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _ "ODBC;DBQ=C:Documents and SettingsfranciscoMes documentstest.mdb;DefaultDir=C:Documents and SettingsfranciscoMes documents;Dri" _ ), Array( _ "ver={Driver do Microsoft Access (*.mdb)};DriverId(1;FIL=MS Access;MaxBufferSize 48;MaxScanRows=8;PageTimeout=5;SafeTransact" _ ), Array("ions=0;Threads=3;UserCommitSync=Yes;")), Destination:=Range("A1")) .CommandText = Array( _ "SELECT Ventes_1999.CodeProduct, Ventes_1999.CodeConditionnement,
(Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" _ , "7)") .Name = "Lancer la requête à partir de aa" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = True .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInfo = True .Refresh BackgroundQuery:úlse End With ActiveWindow.SmallScroll Down:r End Sub
Merci Frédéric
Amicalement Francisco
"Frédéric Sigonneau" <frederic.sigonneau@wanadoo.fr> a écrit dans le message
de news: 402AA5F1.BFAEB02D@wanadoo.fr...
Bonsoir,
Si le grammage est saisi dans une TextBox1 de ton formulaire, tu pourrais
essayer ce genre de syntaxe dans ta requête :
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjour tout le monde
J'ai cette macro enregistée qui me permet via un lien ODBC à me
connecter à
une base Access et d'obtenir le resultat de cette requete sur excel
La macro nommée requête me permet de filtrer des données et d'agir sur
les
champs Grammage de la Table Ventes 1999 et sur le champs volume de la
Table
Ventes 1999 La macro Requête se trouve sur excel ainsi que le resultat
de la
requête ce que je voudrais apprendre à faire c'est créer un formulaire
sur
excel ou je puisse choisir n'importe quel grammage un grammage de 70 75
120
130 par exemple et différents volume Comment je dois faire pour creer le
formulaire et qu'est ce que je dois modifier dans ma requête pour que
les
grammages et les volummes soient considérés comme des variables Je sais
que
je dois modifier cette partie de ma macro requête "WHERE
(Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" , "7)") mais
comment
faire pour la lier à un formulaire
Amicalement Francisco
La macro est la suivante
Sub requête()
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DBQ=C:Documents and SettingsfranciscoMes
documentstest.mdb;DefaultDir=C:Documents and SettingsfranciscoMes
documents;Dri" _
), Array( _
"ver={Driver do Microsoft Access (*.mdb)};DriverId(1;FIL=MS
Access;MaxBufferSize 48;MaxScanRows=8;PageTimeout=5;SafeTransact" _
), Array("ions=0;Threads=3;UserCommitSync=Yes;")),
Destination:=Range("A1"))
.CommandText = Array( _
"SELECT Ventes_1999.CodeProduct,
Ventes_1999.CodeConditionnement,
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour tout le monde J'ai cette macro enregistée qui me permet via un lien ODBC à me connecter à
une base Access et d'obtenir le resultat de cette requete sur excel La macro nommée requête me permet de filtrer des données et d'agir sur les
champs Grammage de la Table Ventes 1999 et sur le champs volume de la Table
Ventes 1999 La macro Requête se trouve sur excel ainsi que le resultat de la
requête ce que je voudrais apprendre à faire c'est créer un formulaire sur
excel ou je puisse choisir n'importe quel grammage un grammage de 70 75 120
130 par exemple et différents volume Comment je dois faire pour creer le formulaire et qu'est ce que je dois modifier dans ma requête pour que les
grammages et les volummes soient considérés comme des variables Je sais que
je dois modifier cette partie de ma macro requête "WHERE (Ventes_1999.Grammage) AND (Ventes_1999.Volume>7.24" , "7)") mais comment
faire pour la lier à un formulaire
Amicalement Francisco La macro est la suivante Sub requête() Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _ "ODBC;DBQ=C:Documents and SettingsfranciscoMes documentstest.mdb;DefaultDir=C:Documents and SettingsfranciscoMes documents;Dri" _ ), Array( _ "ver={Driver do Microsoft Access (*.mdb)};DriverId(1;FIL=MS Access;MaxBufferSize 48;MaxScanRows=8;PageTimeout=5;SafeTransact" _ ), Array("ions=0;Threads=3;UserCommitSync=Yes;")), Destination:=Range("A1")) .CommandText = Array( _ "SELECT Ventes_1999.CodeProduct, Ventes_1999.CodeConditionnement,