プロが教える店舗&オフィスのセキュリティ対策術

エクセル2000です。

sheet(1)のセルに日付データが代入されています。
そのデータををsheet(2)のセルに代入し、"NumberFormat"を使い表示形式を「**年**月**日」と設定しましたが実際のセルには左詰めで「**/**/**」と表示されてしまいます。
「**年**月**日」と表示させるにはどうしたらいいでしょうか?

A 回答 (3件)

No.2ですが、一部間違えました(^^;;;



Worksheets(2).Range("C" & mM).FormulaR1C1 = _
Worksheets(1).Range("B" & iI).Value
Worksheets(2).Range("C" & mM).NumberFormat = _
"ggge年m月d日"

 ではなく、正しくは

Worksheets(2).Range("C" & mM).NumberFormat = _
"ggge年m月d日"
Worksheets(2).Range("C" & mM).FormulaR1C1 = _
Worksheets(1).Range("B" & iI).Value

です。
    • good
    • 0
この回答へのお礼

ありがとうございます、出来ました。

お礼日時:2004/01/26 19:43

もしかすると日付データの入っている列が、文字列形式なのでは?その場合は下記のコードでokだと思います。



Sub Test()
Dim mM As Integer, iI As Integer, endLine As Integer
mM = 1
endLine = Worksheets(1).Range("A65536").End(xlUp).Row
For iI = 1 To endLine
Worksheets(2).Range("B" & mM & ":E" & mM).Value = _
Worksheets(1).Range("A" & iI & ":D" & iI).Value
Worksheets(2).Range("C" & mM).FormulaR1C1 = _
Worksheets(1).Range("B" & iI).Value
Worksheets(2).Range("C" & mM).NumberFormat = _
"ggge年m月d日"
mM = mM + 1
Next iI
End Sub
    • good
    • 0

Sheet1のA1に日付データがあるとして、




Sub Test()
With Worksheets("Sheet2").Range("A1")
 .NumberFormat = "ggge年m月d日"
 .Value = Worksheets("Sheet1").Range("A1").Value
End With
End Sub

でどうでしょう?

この回答への補足

すみません説明が不十分でした。
下記のプロシージャを実行すると、Worksheet(2)のC列が形式表示されないのです。

Sub Test()
Dim mM As Integer, iI As Integer, endLine As Integer
mM = 1
endLine = Worksheets(1).Range("A65536").End(xlUp).Row
For iI = 1 To endLine
Worksheets(2).Range("B" & mM & ":E" & mM).Value = _
Worksheets(1).Range("A" & iI & ":D" & iI).Value
Worksheets(2).Range("C" & mM).NumberFormat = _
"ggge年m月d日"
mM = mM + 1
Next iI
End Sub

補足日時:2004/01/26 13:55
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!