日付データを10種類近く(データ入力日、提出日、発行日等)配置したフォームを作っています。
このフォーム中で表示させている全ての日付データを、同じフォームに配置したボタンを押す度に、和暦表示と西暦表示とに切り替えるようにしたいのですが、うまくできません。どのようにしたらよいのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (2件)

Formatプロパティ(書式)を変えれば、表示も変わりますよね?


InputMaskプロパティ(定型入力)もいっしょに変えれば完璧ですよね。

Private Sub コマンド8_Click()
With Form_TEST_TBL.日付1
If .Format = "yyyy/mm/dd" Then
.Format = "gee/mm/dd"
.InputMask = ">L99\/99\/99;0;_"
Else
.Format = "yyyy/mm/dd"
.InputMask = "0000/00/00;0;_"
End If
End With
End Sub

左のスペースがなくて見にくくなってしまってますが、こんな感じじゃうまくいきませんか?
    • good
    • 0

 現在どの様に作成して、どのような結果になるのかを教えて下さい。



 和暦と西暦の簡単な切替え方法は、日付型で保存したデータを、切り替える事に再読み込みを行い。表示する時にformat文で切り替える方法が一般的だと思われます。
 ただ、再読み込みを行うので大量データを扱うのには適しません。
 そこで、両方のフィールドを用意してボタンで表示を切り替える方法をとれば高速に切り替える事が出来ます。その時には、SQL(クエリー)で、両方のフィールドを表示出来る様にしてあげる方が楽に出来ます。そこで、画面上には、ラベル等で貼付けるのだと思いますが、ボタンを押下する事に、切り替えれば良いでしょう。
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qアクセスでレポートに和暦を表示させるには

アクセスで社員名簿を作成しています

テーブルを
社員名  ○○○○
生年月日 1953/09/18
生年月日 空欄

フォームは
社員名  ○○○○
生年月日 1953/09/18
和暦   昭和28年09月18日
     ↑生年月日を入力すると自動で表示されるようにしました

レポートは
社員名  ○○○○
生年月日 1953/09/18
和歴   空欄

上記で理解して頂けるか大変不安ですがフォームで和暦を手入力していないのでテーブルに反映しません
それに伴ってレポートも表示されません
どうしたらレポートへ和暦を表示することが出来るのでしょうか

Aベストアンサー

1、クエリで生成しておく。

SELECT 社員.ID, 社員.名前, 社員.生年月日, Format([生年月日],"gggee生mm月dd日") AS 和暦
FROM 社員;

2、フォームで仕組む。

和暦.コントロールソース=Format([生年月日"gggee生mm月dd日")

Qアクセスで西暦データを和暦表示させる方法

テーブルのデータは西暦で管理していますが、レポートでは和暦で出力する方法は無いでしょうか。生年月日の表示などはどうしても和暦の方が一般的なので、変則的な方法を探していますので、教えて下さい。

Aベストアンサー

Accessでの和暦の表示
ge   H1
gge   平1
ggee  平01

gggee\年     平成01年
ggge\年m\月d\日   平成1年1月1日
gggee\年mm\月dd\日 平成01年01月01日

ge\/m\/d H1/1/1
gee\/mm\/dd H01/01/01

レポートの日付のフィールドのプロパティの書式で上記より選んで設定してください。

Qエクセルでの和暦から西暦への変換について お願いします。 列に、昭和と平成が入り混じって入力してあり

エクセルでの和暦から西暦への変換について



お願いします。
列に、昭和と平成が入り混じって入力してあります。
昭和50年8月30日生まれであれば、500830。
平成2年12月4日生まれであれば、021204。

この、6桁の数字を西暦0000/00/00と変えたいのですが、どのような方法があるのか教えて頂きたいです。

又、その西暦を使用して、違う列に年齢が出るようにしたいのです。

よろしくお願いいたします。

例 550828→1980/8/28→38歳

Aベストアンサー

裏技を使いました。数字を分解する必要はありません。

A1:500830
=DATEDIF(DATEVALUE(IF(LEFT(TEXT(A1,"000000"),2)*1>29,"S","H")&TEXT(A1*1,"00!/00!/00")),NOW()+1,"Y")

ポイント:*1>29,
平成30の生年月日は存在しないので、昭和にしました。

うまくない場合は、
DATEDIF(DATEVALUE("S" & TEXT(A1*1,"00!/00!/00")),NOW()+1,"Y")
としても可能です。マニュアルですが、S-昭和, H-平成, M-明治を入れます。

問題はここ:NOW()+1
法律的には誕生日の前日午後12時に1歳年齢が加算されるというそうで、+1 にするそうです。つまり、4月1日生まれは早生まれになるわけです。

ひとつ条件があるのは、数字は、数値にしていることだけです。書式文字列(@)にしてしまうと、うまく行きません。逆に、文字列接頭辞(')を使っていたら、最初のLEFT(TEXT(A1,...),2)が不要です。

裏技を使いました。数字を分解する必要はありません。

A1:500830
=DATEDIF(DATEVALUE(IF(LEFT(TEXT(A1,"000000"),2)*1>29,"S","H")&TEXT(A1*1,"00!/00!/00")),NOW()+1,"Y")

ポイント:*1>29,
平成30の生年月日は存在しないので、昭和にしました。

うまくない場合は、
DATEDIF(DATEVALUE("S" & TEXT(A1*1,"00!/00!/00")),NOW()+1,"Y")
としても可能です。マニュアルですが、S-昭和, H-平成, M-明治を入れます。

問題はここ:NOW()+1
法律的には誕生日の前日午後12時に1歳年齢が加算されるというそうで、+1 にす...続きを読む

Qアクセス:クエリのビルダで西暦を和暦にしたい

アクセスのクエリ初心者です。よろしくお願いします。
ヘルプでの調べ方すら時間がなくてわからないので、お助けください。

生年月日が西暦(例:2006/12/22)で入っています。クエリのビルダの関数を使って、『和暦表示』にする方法を教えてください。
よろしくお願いいたします。

Aベストアンサー

別のフィールドで文字列化でいいなら
フィールド名:Format([生年月日],"gggee年mm月dd日")

表示を和暦にするだけなら、プロパティを開いてフィールドの書式欄に
gggee"年"mm"月"dd"日"
としてください。

和暦の書式は
g 年号1桁 M,T,S,H
gg 年号漢字1桁 明,大,昭,平
ggg 年号漢字2桁 明治,大正,昭和,平成
e 和年1桁 1年から9年まで1桁で10年以降はその桁数
ee 和年2桁 1年から9年までを01~09と2桁表示

Q和暦から年齢を表示

こんにちは 
エクセルの事 あまりよくわかって無いので
変な質問かも知れませんが困っています。
よろしくお願いいたします。

(1) エクセルで西暦を入れ 和暦を表示したいのです。
   例えば1983(1983年)と入力すると58(昭和58年)と言うように数字のみ表示。
(2) この数字のみ表示和暦 58から4月1日現在の満年齢
   20(20歳)を表示。

こんな事は出来るのでしょうか?
  

Aベストアンサー

難しいです。
まず、http://arena.nikkeibp.co.jp/qa/other/gaz/oth_68/
にあるようにExcelは日付を1900年1月1日を「1」としたシリアル値で管理していますので、年だけを入力した場合はたとえば1983の場合は1905/6/5と判断されてしまいます。
さらに、(2)の「この数字のみを表示」というのも無理です。入力するセルを隠すことはできませんし、かといって「1983」と入力したセルに「58」と表示させるのは・・・VBAならできるかもしれませんが。


A列に年を
B列には「4」C列には「1」を最初から入力しておきます。
D列に=DATE(A1,B1,C1)と入力します。
E列には=DATEDIF(D1,TODAY(),"y")
これでE列に今年4月1日現在の満年齢が表示されるかと思われます。

D列のセルの書式設定を変更します。
Ctrl+1などでセルの書式設定を開き、ユーザー定義から[$-411]ge;@と入力します。
これでD列の表示は「S58」になります。
B,C列は「表示しない」設定にすることで対処できますが、どうしてもA列とD列は表示しないわけに行きませんでした。
識者の解決法を待ちましょうか。

難しいです。
まず、http://arena.nikkeibp.co.jp/qa/other/gaz/oth_68/
にあるようにExcelは日付を1900年1月1日を「1」としたシリアル値で管理していますので、年だけを入力した場合はたとえば1983の場合は1905/6/5と判断されてしまいます。
さらに、(2)の「この数字のみを表示」というのも無理です。入力するセルを隠すことはできませんし、かといって「1983」と入力したセルに「58」と表示させるのは・・・VBAならできるかもしれませんが。


A列に年を
B列には「4」C列には「1」を最初から入力しておき...続きを読む

Q和暦日付を西暦に変換する方法

エクセルでテキスト形式の和暦日付(例:平成20年2月15日)のデータを西暦(例:15Feb08)に変換したいのですが、うまくいきません。何か方法はありますでしょうか。

Aベストアンサー

こんにちわ。

下記の方法でどうでしょう。

変換したいセルを右クリック
     ↓
セルの書式設定
     ↓
表示形式タブ
     ↓
日付でお好きなフォーマットを選ぶ

QAccess2007で、西暦と和暦を両方使うが、変換が分からない。

Windows7でAccess2007を使っています。テーブル内に日付が西暦と和暦
の二つが有り、通常は西暦で入力をします。然し、表示には西暦と和暦
を出したいのですが。変換が分かりません。

テーブル内には入力の西暦しか無く、表示の前に更新クエリーで西暦の
フィールドを読んで和暦のフィールドを更新したいのですが。簡単に出
来る方法は無いのでしょうか。

宜しく、お願いします。

Aベストアンサー

和暦と西暦の二つのフィールドを設定する必要があるのかな?
クエリのデザイングリッドに新たなフィールドを追加
和暦だよーん:[西暦]
とし、Alt + Enter を押して[和暦だよーん]フィールドのプロパティを表示させます。
その書式のところに、ggge\年mm\月dd\日
とすれば今日だと西暦2016/3/5|和暦だよーん平成28年03月05日
になります。
相互に変更可能ですから二つのフィールドを設定するよりも・・・。
gやmの数はお好みで変更を。

Qワードの差し込み文書で日付を和暦で表示したい

エクセルで日付を入力し1992/3/25のようになるのを「平成4年3月25日」のように表示させることは表示形式をいじることでできるのですが、このデータをワード文書に差し込むと、ワード上では"25/3/1992"のように表示されてしまいます。なんとか、これを「平成4年3月25日」のように表示させることはできないでしょうか。
できればエクセルで「年」と「月」と「日」に分けて、それぞれのデータを「平成」「月」「日」の間に差し込むという手間をとりたくないのです。よろしくお願いします。

Aベストアンサー

下記URLの過去ログをご参照下さい。

「WORDの差し込み印刷について」
http://oshiete1.goo.ne.jp/qa863354.html

「ワード差し込みのフィールドコード表示編集」
http://oshiete1.goo.ne.jp/qa3891633.html

QExcelの日付データを文字列(和暦で数字は全角)としてとりだす方法

Excelのセルに日付データとして入っているものを文字列(和暦で数字は全角、日付はいらないので年月のみ)として別のセルにとりだす方法を教えてください。

例 セルA1:H5.3.26 → セルB1:平成5年3月
   
よろしくお願いします。環境はExcel2000・Windows98SEです。

Aベストアンサー

A1に2003/2/3として
B1セルに=JIS(TEXT(A1,"平成e年m月"))で平成15年2月となります。

Qアクセス 生年月日の和暦表示

初心者です。
アクセス97で、生年月日を入力しました。
昭和2年10月28日生まれの方を、
02/10/28と入力しました。
私のPCではそのまま表示されますが、他の方のPCでは、2002/10/28と表示されてしまいます。
コントロールパネルの地域の日付を和暦に変更すると、14年10月28日となってしまいます。
また、書式をgggee"年"mm"月"dd"日"とすると、平成14年10月28日となります。
他の方のPCでも、02/10/28と表示される方法はありますでしょうか?
なお、他の方のアクセスもアクセス97です。

Aベストアンサー

02/10/28と入力した日付は、テーブルには2002/10/28と認識されて保存されています。
ですからgggeeでは平成14となるのです。
和暦で入力する事が問題なのです。
生年月日フィールドの書式をyyyy/mm/ddにしてみてください。
29年で入力したものは2029年に、30年で入力したものは1930年になっていると思います。
このように、和暦の扱いはデリケートなので、今後は西暦で入力するようにしましょう。
で、既に和暦で入力したデータについては、更新クエリで西暦に直しましょう。
その際は30年未満と以降で変換する係数が変わりますので注意が必要です。
補足が必要でしたら言ってください。
頑張ってくださいヽ(^。^)ノ


人気Q&Aランキング