2016-07-25 3 views
1

2日間の自動計算Noを取得する方法を見つけようとしています。vb.netの自動日数

例:エントリを作成すると、IDが1st July, 2016で500とし、保存します。 また、15日後、つまり15th July, 2016にID 500を開いた場合、Valueフィールドは7月15日を含む「15」と表示されます。同じように、私が20th July, 2016にIDを開くと、それは "20"と表示されるはずです。

私はdatediff関数を試しましたが、自動計算ではありません。

Me.txtndays.Text = DateDiff(DateInterval.Day, Now, metxtdtenter.Text) 

本当にありがとうございます。

ありがとう

+4

は '私はDATEDIFF機能を試してみましたが、それは自動calculating.'ではありません - 「自動計算」を定義します。 –

+1

「1st July、2016」はどこから来たのですか?それはIdと一緒に保存された値ですか?それは 'metxtdtenter'にあるのでしょうか?それはなぜテキストですか?日付が日付のように動作するようにするには、 'DateTime'型を使用します。 – Plutonix

+1

[DateDiff](https://msdn.microsoft.com/en-us/library/b5xbyt6f(v=v190.aspx))は文字列をパラメータとして使用しないため、適切な日付と比較する必要があります。 –

答えて

3

実際には、7月1日から7月15日までの14日間です。

あなたはTimeSpanになります他のどのから1日を減算し、このようなTotalDaysを見つけることができ、これを計算するには:

Dim originalDate As Date = #2016-07-01# 'get this value from the database 
    Dim testDate As Date = #2016-07-15# 'this is the date you want to compare to. Use DateTime.Now to use the current date 
    Dim daysBetween = (testDate - originalDate).TotalDays '14 
+0

日付リテラルは不変の文化形式である必要があります。 '#7/1/2016#' – Plutonix

+0

@Plutonix - もはやそれらはありません –

+0

はVS2015ものですか?それは素晴らしいことです。私はいつもフォームがより理にかなっていると思った。 – Plutonix