J'utilise cette instruction insert dans mon code sous vba Excel mais je ne parviens pas à la décomposer en plusieurs lignes
SqlQueryString = "Insert into Employee values(" & txtEmployeeNo.Value & " _
,'" & txtContractStartDate.Value & "' _
,'" & txtSeatNo.Value & "' _
,'" & txtFloor.Value & "','" & txtLeaves.Value & "')"
Il donne l'erreur "Fin de déclaration attendue". Plz aide.
Vous ne pouvez pas utiliser le caractère de continuation de ligne VB à l'intérieur d'une chaîne.
SqlQueryString = "Insert into Employee values(" & txtEmployeeNo.Value & _
"','" & txtContractStartDate.Value & _
"','" & txtSeatNo.Value & _
"','" & txtFloor.Value & "','" & txtLeaves.Value & "')"
vous pouvez simplement créer votre chaîne en plusieurs étapes, un peu redondant, mais cela permet de garder le code lisible et de préserver son intégrité pendant le débogage ou l'édition
SqlQueryString = "Insert into Employee values("
SqlQueryString = SqlQueryString & txtEmployeeNo.Value & " ,"
SqlQueryString = SqlQueryString & " '" & txtEmployeeNo.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtContractStartDate.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtSeatNo.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtContractStartDate.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtSeatNo.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtFloor.Value & "',"
SqlQueryString = SqlQueryString & " '" & txtLeaves.Value & "' )"
Si la longue chaîne à plusieurs lignes vous confond. Ensuite, vous pouvez installer le complément mz-tools qui est un freeware et l’utilitaire qui divise la ligne pour vous.
Si votre chaîne ressemble à celle ci-dessous
SqlQueryString = "Insert into Employee values(" & txtEmployeeNo.Value & "','" & txtContractStartDate.Value & "','" & txtSeatNo.Value & "','" & txtFloor.Value & "','" & txtLeaves.Value & "')"
Sélectionnez simplement la chaîne> faites un clic droit sur VBA IDE> Sélectionnez MZ-tools> Lignes de fractionnement
Je sais que c’est très vieux, mais si quelqu'un cherche à le savoir, à partir de Visual Basic 14, Vb prend en charge l'interpolation. Tellement cool!
Exemple:
SQLQueryString = $"
Insert into Employee values(
{txtEmployeeNo},
{txtContractsStartDate},
{txtSeatNo},
{txtFloor},
{txtLeaves}
)"
Ça marche. Documentation ici