2015-04-22 1 views
0

Je suis sur le point de me tuer essentiellement en essayant de lire des données à partir d'Excel avec OleDB en C#. ma feuille de calcul contient deux onglets nommés exactement comme:Texte C# OleDbCommand: caractères spéciaux et référence de plage Excel

  • FC Un
  • FC Deux, Trois, 4Quatre

Les données que je dois lire est situé dans la plage A14: AG140. Ainsi, je tire une commande

"SELECT * From [FC One$A14:AG140]" 

- et d'obtenir les résultats dont j'ai besoin pour le premier onglet. Comment épeler la commande pour le second onglet? Voici les options que j'essayées, et aucun d'entre eux ont réussi:

"SELECT * From ['FC Two, Three, 4Four'$A14:AG140]" 
"SELECT * From ['FC Two, Three, 4Four'$!A14:AG140]" 
"SELECT * From ['FC Two, Three, 4Four$'A14:AG140]" 
"SELECT * From ['FC Two, Three, 4Four$'!A14:AG140]" 
"SELECT * From ['FC Two, Three, 4Four$!A14:AG140']" 
"SELECT * From ['FC Two, Three, 4Four$A14:AG140']" 
+0

Que diriez-vous ceci: 'SELECT * FROM [nom de feuille cellulaire référence $]' et si votre feuille naem a des espaces, l'envelopper dans des guillemets simples: 'SELECT * FROM [ nom de la feuille '$ cell-reference] ' – DavidG

Répondre

1

Enfin, je l'ai fait. Curieusement, les citations n'étaient pas du tout nécessaires. Ce truc a fonctionné:

SELECT * From [FC Two, Three, 4Four$A14:AG14] 
+0

Ceci est une réponse. Pourquoi ne l'acceptez-vous pas? – IvanH