Bonjour,
Il n'est jamais facile de faire un premier thread sans oublier les regles de base. Comme les explications même annexes ont leur importance...
Quoiqu'il en soit, j'ai réussi à faire ce que je voulais via du VBScript.
' Information sur l'emplacement du fichier EXCEL
nomFichierExcel = InputBox("Entrer le nom du fichier Excel ","Nom du fichier Excel & Emplacement","C:\SCRIPTS\MATRICE.xlsx")
nomFichierSQL = InputBox("ATTENTION, le nom du fichier SQL (sera écrasé si existant) ","Emplacement du fichier SQL","C:\SCRIPTS\INSERT.sql")
nomTable = InputBox("Veuillez indiquer le nom de la Table ","Nom de la Table (Record)","XXXXX")
' Ouverture du fichier Excel pour la création du fichier SQL
Set objExcel = CreateObject("Excel.Application")
Set xlBook = objExcel.Workbooks.Open(nomFichierExcel)
Set xlSht = xlBook.Worksheets("INSERT")
Set format = CreateObject("Scripting.Dictionary")
' Lire la première ligne pour connaitre le format des données (n Numérique / s Autre)
colonne = 1
Do Until objExcel.Cells(1,colonne).Value = ""
format.Add colonne, xlSht.Cells(1, colonne).value
colonne = colonne + 1
Loop
' Lire les lignes et dumper dans un fichier sql
Set fso = CreateObject("Scripting.FileSystemObject")
Set fsql = fso.CreateTextFile(nomFichierSQL, True)
ligne = 2
Do Until objExcel.Cells(ligne,1).Value = ""
colonne = 1
valueString = ""
Do Until objExcel.Cells(ligne,colonne).Value = ""
If colonne > 1 Then
valueString = valueString & ","
End If
' Echaper les simples cotes dans les chaînes de caractères
myValue = Replace(xlSht.Cells(ligne, colonne).value,"'","''")
If format.Item(colonne) = "s" and myValue <> "NULL" Then
valueString = valueString & "'" & myValue & "'"
Else
valueString = valueString & xlSht.Cells(ligne, colonne).value
End If
colonne = colonne + 1
Loop
fsql.WriteLine "INSERT INTO " & nomTable & " VALUES (" & valueString & ");"
ligne = ligne + 1
Loop
fsql.Close
objExcel.Quit
WScript.Echo "Le Traitement terminé"
' Fin du Script
Désolé pour la gène et merci d'avoir répondu à mon message.
Mister Salm