web-dev-qa-db-ja.com

VBAを介したExcelの「dd / mm / yyyy」日付形式

Excel-vbaを介してExcelシートに「dd/mm/yyyy」形式で日付を書き込もうとしています。 Cells(1, 1).Value = Format(StartDate, "dd/mm/yyyy")を使用して達成しました。そして、私のセル値は30/04/2014、 どっちがいい.....

しかし、いくつかの奇妙な問題があります... startDateを毎月1ずつ追加することにより、月全体を反復する必要があるため、次の値は1/5/2014 の代わりに 01/05/2014毎月12日まで12/5/2014そして13日から、月は再び2桁に変わります13/05/2014....

Range.Findメソッドを使用してこれらの日付を再度検索する必要があるため、すべて2桁で入力する必要があります。

7
deejay

わかった

Cells(1、1).Value = StartDate
Cells(1、1).NumberFormat = "dd/mm/yyyy"

基本的に、日付を設定する代わりに、セル形式を設定する必要があります。

13
deejay

問題は、1を追加して月を変更しようとすることです。Excelの日付シリアルの1は1日に相当します。次を使用して月を変更してみてください。

NewDate = Format(DateAdd("m",1,StartDate),"dd/mm/yyyy")
2
Martin Jackson