2011-02-08 3 views
3

J'utilise VB.NET pour interroger via SQL une feuille de calcul Excel en utilisant ADO.Requête Excel en utilisant ADO de VB.NET quand un nom de colonne est un nombre

La manière générale est comme ceci:

SELECT [firstname], [secondname] FROM [Sheet1$] 

qui fonctionne parfaitement
Cependant, l'une des rubriques est appelée 3, donc je veux faire:

SELECT [firstname], [secondname], [3] FROM [Sheet1$] 

Cependant, cela ne ne fonctionne pas. Je sais que je peux utiliser * pour obtenir toutes les colonnes, mais plus tard je veux utiliser (en utilisant datareader):

dr("3") qui ne fonctionnera pas

Toutes les idées?

Répondre

1

Lors de l'utilisation (ou de l'implicite) HDR=YES dans la chaîne de connexion, un nom de colonne illégal sera remplacé par la position ordinale de la colonne qui sera ajoutée à la lettre F. Par exemple, si votre colonne nommée 3 est la cinquième colonne de la plage Excel, son nom sera considéré comme F5.

+0

merci, cela fonctionne. Je viens d'utiliser F et le numéro de la colonne et cela a parfaitement fonctionné. Oui, j'utilise 'HDR = YES'. – user159603

Questions connexes