Use Dateadd Function To Calculate Resumption Date Excluding Weekends?
Sep 16, 2010
I am trying to compute time off, I have a datetimepicker which allow user to select a day he wishes to start leave and a textbox to specify no of days applying for.Now I wand to use dateadd function to calculate resumption date excluding Weekends.
I would like to calculate a new date simply by using the build-in dateadd function, but take into account that only weekdays should be counted (or 'business days' so to speak).I have come up with this simple algorithm, which does not bother about holidays and such. I have tested this with some simple dates, but would like some input if this can be done in better ways.This sample assumes a week with 5 business days, monday-friday, where first day of the week is monday. Dateformatting used here is d-m-yyyy, the sample calculates with a startdate of october 1, 2009.
Here is the simple form:
Dim d_StartDate As DateTime = "1-10-2009" Dim i_NumberOfDays As Integer = 12 Dim i_CalculateNumberOfDays As Integer
below i have a piece of code, i have to calculate the next working day +5 from today but this calculation has to calculate days from monday to friday and exclude weekends(saturday & sunday) and also excluse public holidays.i have tried but what i got is that it calculates 5days without excluding anything.example if a record is taken out monday, the return date must be the next monday but with this code calculates weekends as well it says return date is saturday.
Public Function AddWorkingDays(ByVal DateIn As DateTime, _ ByVal ShiftDate As Integer) As DateTime ' Adds the [ShiftDate] number of working days to DateIn
i want to use this code to display a date in a datepicker without counting the weekends.That is if i specify maybe 20 days from a date or 20 days from 01/01/2010(1st Janunary,2010) i should get 28/01/2010(28th Januanary,2010) not 21/01/2010(21st January,2010).
I am using the following code to add some value to a date: Dim strdate As Date Dim numinterval As Double numinterval = 149548.720386359 strdate = DateAdd(DateInterval.day, numinterval, #1/1/1601#) MsgBox(strdate)
The value numinterval is the number of days passed since 1/1/1601 (this is how date is counted for things like 'last logon time', 'last bad password' in Active directory). I do some calculation and get that numinterval value in days.. But since I want it to return the time more accurately, I tried first multiplying numinterval by 1400 for number of minutes.. And I changed the interval as dateinterval.minute... That worked fine!
But, when I tried again by multiplying it further by 60, to get the time accurately in seconds and changed the interval to dateinterval.second it throws the following exception: Arithmetic operation resulted in an overflow I changed the type of numinterval into long, but the same problem..
I am trying to calculate the number of years for my calculate age event handler, however i am apparently missing a method or whatnot because im trying to calculate the age , can anyone suggest help on this. I need to subtract years to get my age but when i try the birthdate.Subtract (currentDate) method i get an error about not able to convert from LONG?
So below is what I have.
Private Sub btnCalculateAge_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculateAge.Click Dim currentDate As Date Dim BirthDate As Date Dim Age As Long
there, im doing a leave management system with vb 2005..and here's my problem -how do i 'find' the expiry date?? eg: from the datetimepicker in my form, if the date i select is 1st january 2009.....how do i type the code to find the expiry date 1 year later (which is 1st january 2010) and display the date in a textbox in my form???
I need to add 3 months to a date so i can calculate when a clients email bundle is out dated.so for instance the client registed his bundle on 2009/09/01. I need to be able to add 3 months to this date so it comes out with 2009/12/01 and then compare the dates.
I'd like do make a program which returns you how old you are, in years, months, weeks and days. But I didn't get it to compare different times. Input is a string which looks like 01.01.2011 (dd.mm.yyyy).
My code so far is this: Try dim date1 as string = '01.01.2011' ' Today Dim date2 As Date date2 = Date.Now ' number of seconds since date1 [Code] .....
write a code that can calculate the difference between the datetime a article has been published and datetime of now.like this example :this article has been published 4 minutes ago...this article has been published about 2 days ago...
I need a function that would return true if the date provided was a payday or date of next few weeks paydays.Paydays are every 14 days on a Friday (not twice a month).I tried several attempts, but don't have a clue where to start, except that the function needs a reference date to calculate from. [code]
Im a beginner at visual basic. I did some codes refering to a form in which I need to calculate the differences between my my date of birth to another date. I did a statement which gives me the difference between those in the format of years, but I need to know how I can put the months and days example if my birthdate is 11/26/1991 and I want to calculte how many years, month and days has transcurred until today it would be like 20 years 3 months and 11 days.
Is it possible to calculate the currently selected date in a month calculator?I need to be able to produce a number between 1 and 5 for the currently selected week.
I'm trying to get an If statement to check is the date picked from a datetimepicker is at least 3 days prior to the current date, I can get it to calculate the difference however if I chose a date that 4 days prior to the current date (i.e the result being -4), the else statement doesnt fire.is this something to do with the result being a negative value? I did try to assign the DateDiff result to a variable defined as a short and then used this variable in the If statement, but still get the same issue. Option Strict isn't showing any issues.
I'm using VB.NET in Visual Studio 2008. I'm programming an application to take processing orders and give the total price plus the shipping date. I would like something like : shipping_date = Current_Date + 3 days but I know this doesn't work. Any ideas?
I'm trying to write a program that allows the user to enter 10 numbers into an input box and then the program will use a function to calculate the average of those numbers. I'm really illiterate when it comes to Visual Basic.
In VB2005 I am trying to calculate the number of business days between two dates. I must also account for U.S. holidays (New Year's Day, Martin Luther King Day, Memorial Day, Independence Day, Labor Day, Veterans Day, Thanksgiving Day/Friday after, Christmas Day). If a holiday falls on a Saturday, then the prior day (Friday) is assumed to be a holiday. Likewise, if the holiday falls on a Sunday then the following day (Monday) is assumed to be a holiday.