1 pièce(s) jointe(s)
déclarer une variable par defaut si vide
Bonjour
Je reviens vers vous concernant un code VBA Excel que j'aimerais améliorer.
Cette amélioration concerne une variable.
J'ai essayé avec un select case et if mais en vain :(
J'ai un tableau Excel avec une date de début et une date de fin (cf photo ci dessous).
J'alimente donc ces deux cellules et je lance mon code qui va exécuter une requête qui elle même va exécuter une procédure stockée.
Je souhaiterais rajouter une ligne de code qui stipule que si je n'ai pas de date de fin (en B3) alors la variable datefin de mon code VBA récupère la date du lendemain sinon datefin ( ligne en reouge dans mon code ci dessous).
Merci d'avance de votre aide.
Pièce jointe 647553
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Sub variable()
……………………….
Set cm = New ADODB.Command
With cm
.ActiveConnection = cn
.CommandText = sql
.CommandTimeout = 0
.CommandType = adCmdStoredProc
DateDeb = CDate(Format(Sheets("Feuill1").Range("B2").Value2, "yyyy-mm-dd")) + CDate(Format(Sheets("Feuill1").Range("C2").Value2, "hh:mm:ss"))
datefin = CDate(Format(Sheets("Feuill1").Range("B3").Value2, "yyyy-mm-dd")) + CDate(Format(Sheets("Feuill1").Range("C3").Value2, "hh:mm:ss"))
‘si datefin est vide alors date du lendemain sinon datefin
.Parameters.Append .CreateParameter("DateDeb", adDate, adParamInput, 7, DateDeb
.Parameters.Append .CreateParameter("DateFin", adDate, adParamInput, 7, datefin)
End With
Set rs = cm.Execute()
……………………………………………
End sub |