Comparaison de date

Comparaison de date - VB/VBA/VBS - Programmation

Marsh Posté le 15-03-2006 à 00:15:09    

Bonjour,
 
Je travail en vba sous excel sur une bd mysql.
 
J'ai un problème avec mes dates, dans ma base j'ai un champs qui est au format datetime, et je souhaiterai effectuer une requete en vba sur ce champ avec seulement une date mais pas d'heure.
 
En sql j'ai obtenu le code suivant qui marche parfaitement:

Code :
  1. SQL = "select SUM(quantite) as 'prix_total_vente'
  2. from vente
  3. where date_format(jour_select, '%d-%m-%Y')='11-03-2006'"


 
Mais par contre en vb ca ne marche pas du tout et j'ai pas réussi à trouver sur le net
 
Avant j'avais utiliser une formule qui marchait quand le champs de la base était au format date:

Code :
  1. jour_select='" + Format$(date_test, "dd/mm/yyyy" ) + "'"


 
 :hello:  :hello:

Reply

Marsh Posté le 15-03-2006 à 00:15:09   

Reply

Marsh Posté le 15-03-2006 à 09:42:31    

Tu dis que ça ne marche pas en VBA. C'est-à-dire ? Est ce que ça plante, ça ne ramène aucune donnée ?
Comment la connexion avec ta base mysql est-elle assurée, via une source ODBC, avec quels drivers ?

Reply

Marsh Posté le 15-03-2006 à 11:31:17    

Bonjour
 
Au niveau des connexions il n'y a pas de souci, ca fait 3 mois je fait du vb et 1 mois du vba, j'ai utilisé les memes paramètres de connexion.
 
Après avoir bosser toute la nuit j'ai obtenu ce type de requête qui passe la compilation
 

Code :
  1. SQL = "
  2. select       SUM(quantite) as 'prix_total_vente'
  3. from         vente
  4. where      " & Format$(Cells(4, 1).Value, "dd-mm-yyyy" ) & " =
  5.                '" & Format(CDate(Jour_select), "dd-mm-yyyy" ) & "'"


 
Mais ca ne marche tjs pas. Lorsque je fait afficher la requête j'obtiens ceci :

Code :
  1. select SUM(quantite) as 'prix_total_vente'
  2. from vente
  3. where 11-03-2006 = '30-12-1899'


 
Mais je ne sais pas ou c'est qu'il a trouvé cette date 30-12-1899, ne serai-ce pas la date donné d'origine à tous les type date ?
 
Lorsque je met vente.Jour_select pour voir s'il prend bien la colonne de la table, j'ai une erreur comme quoi il n'y a pas d'objet  dans la requête
 :cry:  :cry:


Message édité par yvonc le 15-03-2006 à 11:50:30
Reply

Marsh Posté le 15-03-2006 à 13:13:14    

J'ai réussi  :D  :D  
 

Code :
  1. SQL = "SELECT SUM( quantite ) AS 'prix_total_vente'
  2. FROM vente
  3. WHERE date_format( jour_selec, '%d-%m-%Y' ) = '" & Format$(date_test, "dd-mm-yyyy" ) & "'"

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed