MS Wordフィールドに日付の違いを表示します
-
01-10-2019 - |
質問
私は履歴書を持っています、そして、オープニング時に私の年齢を自動的に更新したいと思います。では、MS Wordフィールドにどのような式を挿入する必要がありますか?
何かのようなもの:
{= {date} - {"01/01/1983"}}
解決
これは、単語フィールドコードを操作するためのより良いサイトの1つです - http://www.addbalance.com/usersguide/fields.htm - そして、+/-日付の作成方法に関する例があります。
1月の誕生月と1983年の出生年に基づいて計算する方法は次のとおりです。
{IF{DATE\@"MM"} >= 01 { = {DATE\@"YYYY"} – 1983 \#"00"} { = {DATE\@"YYYY"} – 1984 \#"00"}}
1月の場合、このIFステートメントは常に真実であり、= 1983年を与えることに注意してください。別のネストされたIFステートメントを使用して、その日をチェックして、さらに正確にすることができます。
他のヒント
私は試しましたが、ワードフィールドでは、昼間から昼間を補足するExcelの方法に相当するものを見つけることができませんでした(2013年3月21日から2013年3月21日までの05/18/1983)。 Excel 2013の /1900)は、このリファレンスに従って計算されて以来、初期として選択されており、その結果はこの結果を表す方法のみです(完全な日付、数字またはそのフルネーム、またはセルを右クリックしてカテゴリセル形式を選択することで切り替えることができる簡単な数のExcel)(1900年1月1日以降、05/18/1983は30454です(...および00/01/ 1900は0です!)。
最初の質問に答えるために、私はこの書くことを提案します:
{= {DATE \@ "YYYY"} - my_year - 1*{=OR({={DATE \@ "MM"} < my_month};{=AND({={DATE \@ "MM"} = my_month};{={ DATE \@ "dd"} < my_day})})} \* MERGEFORMAT}
注意してください:
- その巻き毛ブラケット{}は単語の詳細記号(通常の「文字」ではない)であり、Ctrl+F9を押すことで挿入する必要があります。
- 'my_year'、 'my_month'(2回)、「my_day ':numper
- この文章は非常に短く、4つの変更のみを示唆しています(残念ながら2回は2回)。これはエラーの防止に役立つでしょう
- 初心者の場合、この執筆は次のように述べています。今日の年はmy_yearを差し引いて、今日の月の値がmy_monthよりも低いか、両方が等しく、今日の日の価値がmy_dayよりも低い場合、1年を超えています。
MergeFormatオプションは、正しい形式を保持するのに役立ちます。
また、単語フィールドの操作に慣れていない人のために:
- Curly Brackets {}内のテキストを右クリックし、「フィールドコードのトグ」、コード自体(内部のテクステ)から切り替える、またはこのコードの計算の結果ですが、それは最新ではないかもしれません(以前はそうかもしれません結果もコードが変更されました)。
- 結果が最新であることを確認するには、右クリックして「フィールドの更新」を選択します。
- マスターフィールド内のすべてのフィールドを開くようにするには、フィールド全体を選択します(それを含む行全体を選択します)、右クリックして「フィールドコードのトグル」(それ以外の場合は、コード化されているか、または戻る可能性があるフィールドを選択します。空の式は見られない可能性があり、望ましくない場合に後で見た結果に影響を与える可能性があります)。
それは1983年5月18日に行われます(私は1月1日を変更しました。これは01/01から18日の混乱を避けます):
{= {DATE \@ "YYYY"} - 1983 - 1*{=OR({={DATE \@ "MM"} < 05};{=AND({={DATE \@ "MM"} = 05};{={ DATE \@ "dd"} < 18})})} \* MERGEFORMAT}
両方の日付のシリアル番号を計算し、互いに引きつけてそれらを減算することをお勧めします。あまりにも関与する必要はありません。とにかく年数だけに興味があります。 年*365 +月*31 +日 ここでうまくやるべきです。
年数の間、差を365で除算します。次に、intを使用して分数部分を剥がします(年の半分の1歳以上になるラウンドではありません)。
{ = INT(({ DATE \@"YYYY" }*365 + { DATE \@"MM" }*31 + { DATE \@"dd" }
- (my_year*365 + my_month*31 + my_day)) / 365) \# "0" }