Fonction DateAdd pour ajouter mois
J'ai utilisé ce code pour ajouter des mois
dtExpiry = DateAdd(DateInterval.Month, intDuration, dtStartDate)
et j'ai aussi essayé ce code,
dtExpiry = DateAdd("m", bytDuration, dtMemStartDate)
mais à chaque fois qu'il ajoute des Jours pas mois. Le format de la date doit être jj/mm/aaaa. J'ai changé mon PC format de date jj/mm/aaaa, mais encore il ne cesse d'ajouter de Jours plutôt qu'en Mois.
BTW, je suis la réception de la durée et date de début de la Principale appelant programme qui extrait ces valeurs à partir d'un fichier de données c'est au format CSV.
- Est-il possible de partager les valeurs de dtStartDate et le résultat dans dtExpiry?
- si la date de début est comme 15/02/1990 et puis, supposons que nous avons à ajouter à 6 mois. Si la date de péremption doit être 15/08/1990
- Les deux lignes de code fonctionne très bien pour moi si je peux utiliser votre date de début et d'intervalles. Pourriez-vous ajouter le exacte d'entrée et de sortie? Aussi, c'est VB.NET et pas VBA.
- son VB.NET et j'ai ajouté ma question pour le rendre plus clair. "Je suis la réception de la durée et date de début de la Principale appelant programme qui extrait ces valeurs à partir d'un fichier de données c'est au format CSV."
- Est
dtStartDate
vraiment un DateTime ou est-il une chaîne de caractères (comme le précise que CSV)? Notez qu'une valeur DateTime n'a pas un format. Un format s'applique uniquement lors de la conversion de cette date en une chaîne (ou l'arrière).
Vous devez vous connecter pour publier un commentaire.
Votre code à l'air bon, mais vous pouvez avoir un type de données incorrect.
Essayer cela et voir si cela fonctionne:
Si cela fonctionne alors vérifier le type de données de
dtStartDate
.Tout cela peut être évité si vous passez Option Strict Sur, que le code ne compile pas si
dtStartDate
n'est pas de typeDateTime
Noter que vous devez également être en mesure de le faire:
Cette échoue à compiler, même avec l'Option Strict Off si
dtStartDate
n'est pas unDateTime
pourrait être une option plus sûre.Utilisation
datetime.tryparse
pour convertir votre chaîne à une date, puis utiliser comme ci-dessous?Vous pouvez également spécifier une conversion et spécifiquement dire quoi où dans la chaîne (m/d/y)
I. e.:
Ou suis-je en manquant à votre question?