ほっとひといき給湯室

ほっとひといき給湯室の掲示板です。お気軽にどうぞ!
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
1文字元号( gge ) が合字( , ~ )に変わった!
投稿日時: 19/02/14 13:33:57
投稿者: 角田
投稿者のウェブサイトに移動

今月の Windows Update で
和暦書式の gge が 平31 ⇒ ~31 に変わった!
 
1文字元号(明、大、昭、平)が
合字元号(香A氏A潤A~)に差し替えられている。
 
そんなの 誰が何時 頼んだというんだ Microsoft!
 
Excel2016 と Excel2010 で確認済み
Excel2003 は "平"のまま
 
だけど、VBA の Format関数は
Excel2003 も含めて "~" に変わった!
 
また、今回も 『取り消し アップデート』が来るのだろうか?
 
迷走しまくる Microsoft 一体 どこへ行きたいの?
 
 
一文字元号の文字を判定で使っている場合、
軒並み影響を受けるのだが・・・

回答
投稿日時: 19/02/14 19:04:43
投稿者: ライスマン

EXCEL2013ですが
まだ"平"のままですね。
私のPCはまだUpdateされていないのだろうか
Microsoftさんのいつもの小さな親切大きなお世話ですね〜

回答
投稿日時: 19/02/14 22:01:27
投稿者: hatena
投稿者のウェブサイトに移動

Access2016でも確認してみました。
テーブルのフィールドの書式、フォーム上のテキストボックスの書式、どちらも gge とすると、~31 になりますね。
 
Access2010 だと、平31 のままです。
 
Fromat はどちらも ~31 です。
 
ほんま、大きなお世話だわ。
 

投稿日時: 19/02/15 11:28:20
投稿者: 角田
投稿者のウェブサイトに移動

あら 更にビックリ
 
VBAで CDate("平成元年12月31日") がサポートされとる!
昭和・大正・明治も可

投稿日時: 19/02/15 20:49:42
投稿者: 角田
投稿者のウェブサイトに移動

アップデートでレジストリが ~ 等に書き換えられているので
レジストリエディタで元の に修正すれば、元に戻ります。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras

回答
投稿日時: 19/02/23 07:32:07
投稿者: kumatti
投稿者のウェブサイトに移動

"KB4487044"で引き起こされたこのバグは、"KB4482887"で修正されます。
IP版には既に降って来ています。

投稿日時: 19/04/02 22:46:22
投稿者: 角田
投稿者のウェブサイトに移動

> VBAで CDate("平成元年12月31日") がサポートされとる
 
Format関数でも ggge年 , gge年 , ge年 で 従来「1年」のところが「元年」に!
 
Format("2019/5/1", "ggge年") ⇒ 令和元年
Format("2019/5/1", "gge年") ⇒ 令元年
Format("2019/5/1", "ge年") ⇒ R元年
 
従来通りに「1年」としたい場合は 元年⇒1年 の Replace が必要
 
 
 
Microsoft Excel および Microsoft Access は、
’元年“ をサポート” していませんが、Office の
VBA プログラミングは OLE に依存しており、
VBA コードで “元年” をサポートしています。

 
https://support.microsoft.com/ja-jp/help/4469068/summary-of-new-japanese-era-updates-kb4469068
中程の「元年対 1年」の箇所
 
わたしの Win10 PCでは 既に上記のようになっており、
Excel2016/2010 と 同居している Excel2003 の VBA(Format関数)にも波及しています。
 
ただ、「未だ [1年]表記 のまま」という人も居るようで、
どのアップデート( Windows ? Office? )で適用になったのか判りません。
 
If (Format("1989/1/8", "ggge年") = "平成元年") Then
    MsgBox "元年アップデート 適用済 PC"
Else
    MsgBox "元年アップデート 未適用 PC"
End If
 
 
EraFormat 関数の『令和』正式リリースでテストしてたら
指定もしていないのに勝手に「元年」になってて ビックリ!
 

回答
投稿日時: 19/05/04 16:09:10
投稿者: WinArrow
投稿者のウェブサイトに移動

情報提供
 
2019/5/4
Windows10新元号対応WindowUpdate
KB4495667
終了しました。
 
環境:Windows10 Office2007
 
Excel 2019/5/1
表示形式 ggge年m月d日 → 平成31年5月1日
TEXT関数 =TEXT(A1,"ggge年m月d日") → 平成31年5月1日
 
VBA Format関数 Format(Range("A1").Value),"ggge年m月d日") → 令和1年5月1日
VBA CDate関数 Cdate("令和01年5月1日") → 2019/05/01

回答
投稿日時: 19/05/05 05:33:19
投稿者: VBA-stepup

Windows Updateしました。
2019-04 x64 ベース システム用 Windows 8.1 向けマンスリー品質ロールアップのプレビュー (KB4493443)
  
Sub 新元号確認()
    Debug.Print "OSバージョン   : " & Application.OperatingSystem
    Debug.Print "Excelバージョン : " & Application.Version
      
    Debug.Print "VBA元号取得"
    Debug.Print "ggge年m月d日 : " & Format("2019/5/1", "ggge年m月d日")
    Debug.Print "gge年m月d日 : " & Format("2019/5/1", "gge年m月d日")
    Debug.Print "ge年m月d日 : " & Format("2019/5/1", "ge年m月d日")
    Debug.Print "ge.m.d : " & Format("2019/5/1", "ge.m.d")
    Debug.Print "令和01年5月1日 : " & CDate("令和01年5月1日")
    Debug.Print "令和元年5月1日 : " & CDate("令和元年5月1日")
End Sub
 
  
結果:
OSバージョン   : Windows (32-bit) NT 6.02
Excelバージョン : 15.0
VBA元号取得
ggge年m月d日 : 令和1年5月1日
gge年m月d日 : 令1年5月1日
ge年m月d日 : R1年5月1日
ge.m.d : R1.5.1
令和01年5月1日 : 2019/05/01
令和元年5月1日 : 2019/05/01
 
Windows8.1
Excel2013では、元年・合字対応にはなっていないようです。
CDate("令和元年5月1日")はサポートされているようです。

トピックに返信