2017-11-07 14 views
1

テーブルから取得する従業員のタイムアウト・タイムアウト・レコードが多数あるdatagridviewがあります。今私はdatagridviewからexcelファイルにデータをエクスポートできますが、私は問題があります。エクスポートされた値(時間)をdatagridviewからexcelに変換する

時刻のタイム・フォーマットとタイムアウトは完全に「午前9時」と同じですが、エクセルにエクスポートすると「12/30/1899午前9時00分」になります。これはまたdatagridviewの私の最初の問題でしたが、問題を解決するためにDGV.Columns(1).DefaultCellStyle.Format = "t"を使用します。誰か教えてください

+2

これはAccessと何が関係していますか? –

+0

@ErikvonAsmuth imをdbとしてアクセスします。と私は多分ソリューションがdb –

答えて

0

既に解決済みです!私は先端のため

感謝をフォーマットするどのセルループキャッチを使用して、このコード

cellvalue = DGVResult.Rows(i).Cells(j).Value.ToString 

Date.Parse(cellvalue).ToString("hh:mm tt").ToString 

を使用します!

+0

しかしそれは_text_ではなく、_date/time_値としてあなたの時間を残します。テキストとしての日時は絶対に避けてください。 – Gustav

+0

しかし、それは私の問題を解決し、 "1899/01/01 09:00 AM"から "09:AM"への不要なデータなしで、 –

1

問題ありません。日付1899-12-30は、のゼロ値の日付であり、日付が指定されていない場合、時刻の値は常にゼロの日付に属します。

したがって、値を表示するときにのみの時刻書式を適用する必要があります。

補遺

あなたがExcelでのみ、直接時間を入力すると、それは1900-01-01のゼロ値の日付を使用していることを、表示されます。

エクスポートするときに、など、2日間追加します。export D

Dim t As TimeSpan 
Dim d As DateTime 
t = New TimeSpan(14, 34, 0) ' Your cell value. 
d = New DateTime(1900, 1, 1).AddTicks(t.Ticks) 

その後。

+0

にあることを知っているので、どのように私は時間形式をExcelでエクスポートするときにdatagridviewからエクスポートすることができますか? –

+0

フォーマットを適用することはできませんが、値を変更することができます。編集を参照してください。 – Gustav

関連する問題