Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Colonne de type date non reconnue dans un tableau créé à partir d'une source de données externes

4 réponses
Avatar
TedIF
Bonjour

J'utilise Excel 2007 et SQL Server 2000 sous Windows XP.

Losque je crée un tableau de feuille de calcul à partir de données
renvoyées par SQL Server 2000 avec :

ActiveSheet.QueryTables.Add(Connection:="ODBC;DRIVER=SQL
Server;Trusted_Connection=Yes...

les colonnes de type date sont bien reconnues dans la feuille de
calcul.

Par contre lorsque je tente d'effectuer la même chose avec

ActiveSheet.ListObjects.Add(Connection:="ODBC;DRIVER=SQL
Server;Trusted_Connection=Yes...

les colonnes de type date ne sont pas reconnues comme date dans la
feuille de calcul (elle s'affiche sous la forme d'un numérique) : ce
qui me pose un problème.

Je peux bien sûr utiliser la première solution, mais dans ce cas je me
prive de la mise en page de mon tableau à l'aide d'un style de tableau
prédéfini d'Office 2007.

Est-ce mon utilisation de "ListObjects.Add..." qui est en cause, ou
bien est-ce une faiblesse de "ListObjects.Add..." ?

Comment peut-on avoir des colonnes de type date reconnue par Excel dans
un tableau de feuile de calcul avec une mise en page à l'aide des
styles prédéfinis d'Office 2007 ?

(Je precise que je rencontre le problème avec ODBC ou avec ADODB)

Merci d'avance pour votre aide.

--

Dominique

4 réponses

Avatar
Daniel.C
Bonsoir.
Si j'ai bien compris, c'est un problème de format dans Excel; ajoute la
ligne :
Colonne(n).NumberFormat.NumberFormat = "mm/dd/yyyy"
Cordialement.
Daniel

Bonjour

J'utilise Excel 2007 et SQL Server 2000 sous Windows XP.

Losque je crée un tableau de feuille de calcul à partir de données renvoyées
par SQL Server 2000 avec :

ActiveSheet.QueryTables.Add(Connection:="ODBC;DRIVER=SQL
Server;Trusted_Connection=Yes...

les colonnes de type date sont bien reconnues dans la feuille de calcul.

Par contre lorsque je tente d'effectuer la même chose avec

ActiveSheet.ListObjects.Add(Connection:="ODBC;DRIVER=SQL
Server;Trusted_Connection=Yes...

les colonnes de type date ne sont pas reconnues comme date dans la feuille de
calcul (elle s'affiche sous la forme d'un numérique) : ce qui me pose un
problème.

Je peux bien sûr utiliser la première solution, mais dans ce cas je me prive
de la mise en page de mon tableau à l'aide d'un style de tableau prédéfini
d'Office 2007.

Est-ce mon utilisation de "ListObjects.Add..." qui est en cause, ou bien
est-ce une faiblesse de "ListObjects.Add..." ?

Comment peut-on avoir des colonnes de type date reconnue par Excel dans un
tableau de feuile de calcul avec une mise en page à l'aide des styles
prédéfinis d'Office 2007 ?

(Je precise que je rencontre le problème avec ODBC ou avec ADODB)

Merci d'avance pour votre aide.


Avatar
TedIF
Daniel.C avait prétendu :
Bonsoir.
Si j'ai bien compris, c'est un problème de format dans Excel; ajoute la ligne
:
Colonne(n).NumberFormat.NumberFormat = "mm/dd/yyyy"



Bien sûr, mais comme le tableau est construit dynamiquement je ne
connais pas le type des colonnes à l'avance.

Merci quand même

--

Dominique
Avatar
Daniel.C
Récupère un tableau classique (plage de cellules) et transforme-le
ensuite en table (listobject).
Daniel

Daniel.C avait prétendu :
Bonsoir.
Si j'ai bien compris, c'est un problème de format dans Excel; ajoute la
ligne :
Colonne(n).NumberFormat.NumberFormat = "mm/dd/yyyy"



Bien sûr, mais comme le tableau est construit dynamiquement je ne connais pas
le type des colonnes à l'avance.

Merci quand même


Avatar
TedIF
Il se trouve que Daniel.C a formulé :
Récupère un tableau classique (plage de cellules) et transforme-le ensuite en
table (listobject).
Daniel

Daniel.C avait prétendu :
Bonsoir.
Si j'ai bien compris, c'est un problème de format dans Excel; ajoute la
ligne :
Colonne(n).NumberFormat.NumberFormat = "mm/dd/yyyy"



Bien sûr, mais comme le tableau est construit dynamiquement je ne connais
pas le type des colonnes à l'avance.

Merci quand même





Oui mais je perds du coup la liaison externe

--

Dominique