J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour vous
car...
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece =" &
" ' ' " & """)));"
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour vous
car...
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece =" &
" ' ' " & """)));"
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour vous
car...
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece =" &
" ' ' " & """)));"
Salut,
"mumu"J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car...
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
=" &
" ' ' " & """)));"
Il y a au moins un truc bizarre dans le DMax(...
La première expression doit être un nom de champ...
au besoin, entre crochets....
Alors, que fait ton "Ccur(NumeroPiece)" a la place ?
--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------
Salut,
"mumu"
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car...
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
=" &
" ' ' " & """)));"
Il y a au moins un truc bizarre dans le DMax(...
La première expression doit être un nom de champ...
au besoin, entre crochets....
Alors, que fait ton "Ccur(NumeroPiece)" a la place ?
--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------
Salut,
"mumu"J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car...
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
=" &
" ' ' " & """)));"
Il y a au moins un truc bizarre dans le DMax(...
La première expression doit être un nom de champ...
au besoin, entre crochets....
Alors, que fait ton "Ccur(NumeroPiece)" a la place ?
--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------
bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sans
probleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece ="
&
" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sans
probleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece ="
&
" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sans
probleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece ="
&
" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
mon CCur sert a transformer NumeroPiece en chiffre car il est en lettre
sinon DMax va planter.
je te donne l'expression a mettre en sql directement dans une requette tu
verra que je suis "reglo" avec DMax:
SELECT Ecritures.NumeroPiece
FROM Ecritures
WHERE
((([Ecritures].[NumeroPiece])=DMax("Ccur([NumeroPiece])","Ecritures","not
isnull(NumeroPiece) And not [NumeroPiece]= ' ' ")));
NumeroPiece est le Nom d'un champ de la table Ecritures
mon CCur sert a transformer NumeroPiece en chiffre car il est en lettre
sinon DMax va planter.
je te donne l'expression a mettre en sql directement dans une requette tu
verra que je suis "reglo" avec DMax:
SELECT Ecritures.NumeroPiece
FROM Ecritures
WHERE
((([Ecritures].[NumeroPiece])=DMax("Ccur([NumeroPiece])","Ecritures","not
isnull(NumeroPiece) And not [NumeroPiece]= ' ' ")));
NumeroPiece est le Nom d'un champ de la table Ecritures
mon CCur sert a transformer NumeroPiece en chiffre car il est en lettre
sinon DMax va planter.
je te donne l'expression a mettre en sql directement dans une requette tu
verra que je suis "reglo" avec DMax:
SELECT Ecritures.NumeroPiece
FROM Ecritures
WHERE
((([Ecritures].[NumeroPiece])=DMax("Ccur([NumeroPiece])","Ecritures","not
isnull(NumeroPiece) And not [NumeroPiece]= ' ' ")));
NumeroPiece est le Nom d'un champ de la table Ecritures
D'un coté ton "NumeroPiece" est numérique et de l'autre texte ??
Un simple :
Select NumeroPiece From Ecritures Where NumeroPiece DMax("NumeroPiece","Ecritures");
devrait suffire...
Salut,
"mumu"mon CCur sert a transformer NumeroPiece en chiffre car il est en lettre
sinon DMax va planter.
D'un coté ton "NumeroPiece" est numérique et de l'autre texte ??je te donne l'expression a mettre en sql directement dans une requette
tu
verra que je suis "reglo" avec DMax:
SELECT Ecritures.NumeroPiece
FROM Ecritures
WHERE
((([Ecritures].[NumeroPiece])=DMax("Ccur([NumeroPiece])","Ecritures","not
isnull(NumeroPiece) And not [NumeroPiece]= ' ' ")));
NumeroPiece est le Nom d'un champ de la table Ecritures
Ici, tu sélectionne le "NumeroPiece" de la table "Ecritures" lorsque
"NumeroPiece"
est egal à la plus grande valeur de "NumeroPiece" de cette même table...
Un simple :
Select NumeroPiece From Ecritures Where NumeroPiece DMax("NumeroPiece","Ecritures");
devrait suffire...
le DMax( ) ne traitant pas des NULL et chaines vides lorsque le champ
est renseigné.
ou même avec :
Select TOP 1 NumeroPiece FROM Ecritures Order By NumeroPiece Desc;
qui te donnera tous les "ex aequo" égale au Max de NuméroPiece
--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------
D'un coté ton "NumeroPiece" est numérique et de l'autre texte ??
Un simple :
Select NumeroPiece From Ecritures Where NumeroPiece DMax("NumeroPiece","Ecritures");
devrait suffire...
Salut,
"mumu"
mon CCur sert a transformer NumeroPiece en chiffre car il est en lettre
sinon DMax va planter.
D'un coté ton "NumeroPiece" est numérique et de l'autre texte ??
je te donne l'expression a mettre en sql directement dans une requette
tu
verra que je suis "reglo" avec DMax:
SELECT Ecritures.NumeroPiece
FROM Ecritures
WHERE
((([Ecritures].[NumeroPiece])=DMax("Ccur([NumeroPiece])","Ecritures","not
isnull(NumeroPiece) And not [NumeroPiece]= ' ' ")));
NumeroPiece est le Nom d'un champ de la table Ecritures
Ici, tu sélectionne le "NumeroPiece" de la table "Ecritures" lorsque
"NumeroPiece"
est egal à la plus grande valeur de "NumeroPiece" de cette même table...
Un simple :
Select NumeroPiece From Ecritures Where NumeroPiece DMax("NumeroPiece","Ecritures");
devrait suffire...
le DMax( ) ne traitant pas des NULL et chaines vides lorsque le champ
est renseigné.
ou même avec :
Select TOP 1 NumeroPiece FROM Ecritures Order By NumeroPiece Desc;
qui te donnera tous les "ex aequo" égale au Max de NuméroPiece
--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------
D'un coté ton "NumeroPiece" est numérique et de l'autre texte ??
Un simple :
Select NumeroPiece From Ecritures Where NumeroPiece DMax("NumeroPiece","Ecritures");
devrait suffire...
Salut,
"mumu"mon CCur sert a transformer NumeroPiece en chiffre car il est en lettre
sinon DMax va planter.
D'un coté ton "NumeroPiece" est numérique et de l'autre texte ??je te donne l'expression a mettre en sql directement dans une requette
tu
verra que je suis "reglo" avec DMax:
SELECT Ecritures.NumeroPiece
FROM Ecritures
WHERE
((([Ecritures].[NumeroPiece])=DMax("Ccur([NumeroPiece])","Ecritures","not
isnull(NumeroPiece) And not [NumeroPiece]= ' ' ")));
NumeroPiece est le Nom d'un champ de la table Ecritures
Ici, tu sélectionne le "NumeroPiece" de la table "Ecritures" lorsque
"NumeroPiece"
est egal à la plus grande valeur de "NumeroPiece" de cette même table...
Un simple :
Select NumeroPiece From Ecritures Where NumeroPiece DMax("NumeroPiece","Ecritures");
devrait suffire...
le DMax( ) ne traitant pas des NULL et chaines vides lorsque le champ
est renseigné.
ou même avec :
Select TOP 1 NumeroPiece FROM Ecritures Order By NumeroPiece Desc;
qui te donnera tous les "ex aequo" égale au Max de NuméroPiece
--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
"mumu" a écrit dans le message de
news:bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sansprobleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
="
&" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le
resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero
de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
"mumu" <XYZmurenne@hotmail.com> a écrit dans le message de
news:eMg6UZwvDHA.1996@TK2MSFTNGP12.phx.gbl...
bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sans
probleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
="
&
" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le
resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero
de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
"mumu" a écrit dans le message de
news:bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sansprobleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
="
&" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le
resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero
de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
"mumu" a écrit dans le message de
news:bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sansprobleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
="
&" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le
resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero
de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
"mumu" <XYZmurenne@hotmail.com> a écrit dans le message de
news:eMg6UZwvDHA.1996@TK2MSFTNGP12.phx.gbl...
bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sans
probleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
="
&
" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le
resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero
de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
"mumu" a écrit dans le message de
news:bonjour
J'ai l'impression que la connection ne se fait pas comme il faudrait,
pourtant j'ai rajouté les deux lignes de connection de dbCompta pour
vous
car
moi elle sont dans une autre procedure et dbCompta est public
en remplacant dbCompta par currentdb ca marche (a condition de mettre la
table Ecriture dans la base qui contient le code bien sur)
cette connection a deja servi dans une autre procedure et a fonctionné
sansprobleme pourtant :(
voici mon code
Function TrouverNumPiece()
Dim rstNumPiece As Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
'ouverture de la base
SQLNumPiece = "SELECT Ecritures.NumeroPiece FROM Ecritures WHERE
(((Ecritures.NumeroPiece)=DMax(" & """Ccur(NumeroPiece)""" & "," &
"""Ecritures""" & "," & """Not IsNull(NumeroPiece) And Not NumeroPiece
="
&" ' ' " & """)));"
Debug.Print SQLNumPiece
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece) 'je mets le
resultat
dans rstNumPiece
TrouverNumPiece = rstNumPiece!NumeroPiece 'c'est le plus grand numero
de
piece existant
End Function
Si je remplace
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
par
Set rstNumPiece = CurrentDb.OpenRecordset(SQLNumPiece)
ca marche
J'avoue ne pas comprendre pourquoi cela ne marche pas si vous pouviez
m'aider
merci beaucoup
Mumu
Salut Rv et merci de prendre un moment pour me repondre
le soucis est que je ne peux pas creer la requete physiquement car elle
depand de tables exterieurs a ma base.
je ne peux pas non plus lier cette table, sinon je m'en sortais ( a cause
d'autre liaisons qui se font en automatique)
Bon tous ca pour dire que Max ne marche pas avec VBA ou alors il y a
quelque
chose que j'ai mal fait
pour SELECT TOP 1 je vais essayer je te tindrais au courant.
Mumu
"Rv" a écrit dans le message de
news:Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
Salut Rv et merci de prendre un moment pour me repondre
le soucis est que je ne peux pas creer la requete physiquement car elle
depand de tables exterieurs a ma base.
je ne peux pas non plus lier cette table, sinon je m'en sortais ( a cause
d'autre liaisons qui se font en automatique)
Bon tous ca pour dire que Max ne marche pas avec VBA ou alors il y a
quelque
chose que j'ai mal fait
pour SELECT TOP 1 je vais essayer je te tindrais au courant.
Mumu
"Rv" <herve.pinardPASDESPAM@free.fr> a écrit dans le message de
news:eyEcefyvDHA.1996@TK2MSFTNGP12.phx.gbl...
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
Salut Rv et merci de prendre un moment pour me repondre
le soucis est que je ne peux pas creer la requete physiquement car elle
depand de tables exterieurs a ma base.
je ne peux pas non plus lier cette table, sinon je m'en sortais ( a cause
d'autre liaisons qui se font en automatique)
Bon tous ca pour dire que Max ne marche pas avec VBA ou alors il y a
quelque
chose que j'ai mal fait
pour SELECT TOP 1 je vais essayer je te tindrais au courant.
Mumu
"Rv" a écrit dans le message de
news:Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER BY
ccur(NumeroPiece) DESC
A+
Rv
Alors là c'est moi qui ne comprends plus! Pourquoi ne peut-on pas lancer
(sans créer) une telle requête avec
Dim rstNumPiece As DAO.Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
' ouverture de la base externe
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
' Création du texte de la requête
rstNumPiece = "SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures
WHERE
Ecritures.NumeroPiece<>' ' AND Not is null Ecritures.NumeroPiece"
' Execution de la requête
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
...
Sinon tu peux te lier ponctuellement avec cette syntaxe :
SELECT Meschamps FROM Mestables IN 'chemindelabaseaccessexterne' WHERE
mesconditions. Ce qui te permettrait de l'éxecuter via CurrentDb
Enfin, le MAX n'est pas une instruction VBA mais une fonction SQL. En
dehors
d'une requête SQL il n'a pas de sens.
A+
Rv
"mumu" a écrit dans le message de
news:Salut Rv et merci de prendre un moment pour me repondre
le soucis est que je ne peux pas creer la requete physiquement car elle
depand de tables exterieurs a ma base.
je ne peux pas non plus lier cette table, sinon je m'en sortais ( a
cause
d'autre liaisons qui se font en automatique)
Bon tous ca pour dire que Max ne marche pas avec VBA ou alors il y a
quelquechose que j'ai mal fait
pour SELECT TOP 1 je vais essayer je te tindrais au courant.
Mumu
"Rv" a écrit dans le message de
news:Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER
BY
ccur(NumeroPiece) DESC
A+
Rv
Alors là c'est moi qui ne comprends plus! Pourquoi ne peut-on pas lancer
(sans créer) une telle requête avec
Dim rstNumPiece As DAO.Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
' ouverture de la base externe
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
' Création du texte de la requête
rstNumPiece = "SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures
WHERE
Ecritures.NumeroPiece<>' ' AND Not is null Ecritures.NumeroPiece"
' Execution de la requête
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
...
Sinon tu peux te lier ponctuellement avec cette syntaxe :
SELECT Meschamps FROM Mestables IN 'chemindelabaseaccessexterne' WHERE
mesconditions. Ce qui te permettrait de l'éxecuter via CurrentDb
Enfin, le MAX n'est pas une instruction VBA mais une fonction SQL. En
dehors
d'une requête SQL il n'a pas de sens.
A+
Rv
"mumu" <XYZmurenne@hotmail.com> a écrit dans le message de
news:OCbsBCzvDHA.2072@TK2MSFTNGP10.phx.gbl...
Salut Rv et merci de prendre un moment pour me repondre
le soucis est que je ne peux pas creer la requete physiquement car elle
depand de tables exterieurs a ma base.
je ne peux pas non plus lier cette table, sinon je m'en sortais ( a
cause
d'autre liaisons qui se font en automatique)
Bon tous ca pour dire que Max ne marche pas avec VBA ou alors il y a
quelque
chose que j'ai mal fait
pour SELECT TOP 1 je vais essayer je te tindrais au courant.
Mumu
"Rv" <herve.pinardPASDESPAM@free.fr> a écrit dans le message de
news:eyEcefyvDHA.1996@TK2MSFTNGP12.phx.gbl...
Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER
BY
ccur(NumeroPiece) DESC
A+
Rv
Alors là c'est moi qui ne comprends plus! Pourquoi ne peut-on pas lancer
(sans créer) une telle requête avec
Dim rstNumPiece As DAO.Recordset
Dim SQLNumPiece As String
strCheminCompta = "C:Compta.mdb"
' ouverture de la base externe
Set dbCompta = Workspaces(0).OpenDatabase(strCheminCompta, False, False)
' Création du texte de la requête
rstNumPiece = "SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures
WHERE
Ecritures.NumeroPiece<>' ' AND Not is null Ecritures.NumeroPiece"
' Execution de la requête
Set rstNumPiece = dbCompta.OpenRecordset(SQLNumPiece)
...
Sinon tu peux te lier ponctuellement avec cette syntaxe :
SELECT Meschamps FROM Mestables IN 'chemindelabaseaccessexterne' WHERE
mesconditions. Ce qui te permettrait de l'éxecuter via CurrentDb
Enfin, le MAX n'est pas une instruction VBA mais une fonction SQL. En
dehors
d'une requête SQL il n'a pas de sens.
A+
Rv
"mumu" a écrit dans le message de
news:Salut Rv et merci de prendre un moment pour me repondre
le soucis est que je ne peux pas creer la requete physiquement car elle
depand de tables exterieurs a ma base.
je ne peux pas non plus lier cette table, sinon je m'en sortais ( a
cause
d'autre liaisons qui se font en automatique)
Bon tous ca pour dire que Max ne marche pas avec VBA ou alors il y a
quelquechose que j'ai mal fait
pour SELECT TOP 1 je vais essayer je te tindrais au courant.
Mumu
"Rv" a écrit dans le message de
news:Salut,
N'est-il pas possible d'utiliser d'autres requêtes comme:
SELECT Max(ccur(Ecritures.NumeroPiece)) FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece
ou
SELECT TOP 1 Ecritures.NumeroPiece FROM Ecritures WHERE
Ecritures.NumeroPiece<>'' AND Not is null Ecritures.NumeroPiece ORDER
BY
ccur(NumeroPiece) DESC
A+
Rv