Bonjour,
Dans le cadre d'un développement SSIS , je dois modifier un code en VB.Net qui met à jour le contenu d'un fichier Excel

Pour se faire, des lignes sont numerotées et dans une boucle avec un compteur, je met a jour la ligne dont WHERE F1=compteur

le probleme est que, dès qu'il s'agit d'un numero, deux cas de figures se presentes (j'ai simplifié un exemple de requete):

si j'ecris

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
cmd.CommandText = "UPDATE [Feuil1$] SET F2='TEST' WHERE F1 ='1'"
cmd.ExecuteNonQuery()
avec des cotes entre le 1, il ne reconnait pas la valeur, elle n'existe pas.


si j'ecris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
cmd.CommandText = "UPDATE [Feuil1$] SET F2='TEST' WHERE F1 =1"
cmd.ExecuteNonQuery()
donc sans les cotes, il me pete dans les doigts

Par contre, si a la place des numeros de lignes, je met du texte, cela fonctionne

voici ma chaine de connexion au fichier excel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
Dim ConnectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" + Dts.Variables("SOURCE").Value.ToString + strFilename & _
";Extended Properties=""Excel 8.0;HDR=NO"""

Donc pour résumer, dans mon fichier excel, j'ai des une colonne avec des lignes numérotées.
je veux juste pouvoir modifier la ligne X avec des données que j'ai dans un dataset.

Çà fait des lustres que je stagne la dessus, j'avoue commencer a craquer.
J'ai farfouillé sur le net, il y a bien une méthode qui consiste a ajouter IMEX=1, mais cela passe le pilote en mode d'import. Donc oui, avec un select je récupère bien mes numéros, mais je ne peux pas faire des updates.

Y a peut être pas de solution non plus, mais si c'est le cas, dites le moi, ça m’évitera de me taper la tête contre les murs

please, help !

Merci a tous