2010-04-12 26 views
3

J'ai un ensemble de données et j'écris ses valeurs à un fichier Excel en utilisant Microsoft Jet 4.0 Oledb fournisseur. Je veux mettre des liens hypertexte dans l'excel, pour cela j'écris "= HYPERLINK (" http://www.abc.org/x.pdf ")" dans DS, puis l'écris à Excel. Mais quand l'excel est ouvert il préfixe un '(quote/apostrophe) avant la formule et là il s'agit d'un texte, pas de lien. Pouvez-vous m'aider à supprimer cette citation afin que mon fichier Excel ait des liens hypertexte au lieu de cela comme texte?Microsoft Jet oledb connexion pour exceler perd des formules

Je dois utiliser un fournisseur Microsoft Jet 4.0 (et non un composant Excel) car le poste client peut installer ou non MS-Excel sur sa machine.

Répondre

0

Jet fournira intégration de données avec Excel. Vous pouvez lire/écrire des données. Pas de formules ou de formatage ou quoi que ce soit d'autre.

Pour faire ce que vous voulez, vous aurez besoin de produire des données formatées. Vous pouvez le faire en générant un fichier HTML et en disant au client que c'est Excel qui fonctionnera bien, mais a des effets secondaires mineurs. Une meilleure option serait d'utiliser un écrivain binaire Excel réel. Beaucoup d'options:

Import and Export Excel - What is the best library?

+0

J'étais sur le point de poser essentiellement la même question (en ce qui concerne l'insertion »avant tous les champs, quel que soit leur type de données). On pourrait penser que, puisque l'architecture Ole reçoit de moi des informations sur le type de serveur lorsque j'émets des requêtes Linq, elle sait au moins ne pas changer le type d'un int en une chaîne? – Reinderien

+0

@Reinderien, dans mes nombreuses années d'expérience dans la programmation sur Excel, la seule constante que j'ai trouvée est que le bon sens ne s'applique jamais. –

+0

Eh bien, c'est décourageant. – Reinderien