>> Elettronica Tecnologia >  >> Casa intelligente >> Vita intelligente

Confronto date in VBA

Il confronto delle date in Microsoft Visual Basic, Applications Edition non è diverso dal confronto di qualsiasi altro tipo di dati. I valori da confrontare devono essere di tipo "Data". È possibile utilizzare gli operatori di confronto standard:"<" per "minore di"; "<=" per "minore o uguale a"; ">" per "maggiore di"; ">=" per "maggiore o uguale a"; "=" per "uguale a"; e "<>" per "non uguale a". Puoi anche utilizzare due operatori di confronto, "È" e "Non è."

Tipo di data VBA

È utile ricordare come VBA memorizza i valori della data in memoria quando si confrontano le date. Una data viene memorizzata come numero a virgola mobile a precisione doppia o Double. La parte intera lunga è il numero di giorni, positivi o negativi, dal 30 dicembre 1899. La parte decimale è il tempo trascorso dalla mezzanotte. Una data senza ora ha la sua parte decimale impostata su zero. Ad esempio, il 1 maggio 1967 viene archiviato come 24593.0. Ciò significa che quando VBA confronta due date, in realtà confronta due numeri che rappresentano i giorni.

Stringa di caratteri vs. Data

Quando si confrontano le date in VBA, è necessario assicurarsi che i valori che si confrontano abbiano un tipo "Data" e non siano stringhe di caratteri. Ad esempio, la stringa di caratteri "05/01/1999" è inferiore alla stringa di caratteri "31/12/1900" perché "05" viene prima di "12". Converti una stringa di caratteri in un tipo di data utilizzando la funzione "CDate", ad esempio "CDate(TextBox.Value)".

Funzioni utili

Oltre a CDate(), ci sono altre utili funzioni che potresti usare per confrontare le date. La funzione "Date()" fornisce la data odierna come valore Date. La funzione "Ora()" fornisce la data e l'ora odierna come valore Data. Poiché il tipo di dati Date include anche un componente temporale, è possibile estrarre solo la parte relativa alla data di una variabile quando si confrontano le date utilizzando la funzione "DateValue()", ad esempio "If submit> DateValue(deadline) Then ..."

Aritmetica della data

Poiché una data viene archiviata come numero di giorni dal 30 dicembre 1899, è possibile includere l'aritmetica della data quando si confrontano le date in VBA. Ad esempio, se un biglietto scade tre giorni dopo l'acquisto, puoi verificare la presenza di un biglietto scaduto con un codice VBA simile al seguente:

Funzione pubblica scaduta(acquista come data) As Booleano scaduto =False Se acquisto+3> Data() Poi scaduto =Vero Fine Se Fine Funzione


  1. Un confronto di
  2. GPS portatile Confronto
  3. Un confronto di altoparlanti wireless
  4. Zune vs. Confronto iPod
  5. Cavo coassiale Confronto
  6. Confronto di FiOS a DirecTV