私が現在抱えている問題は、MS Excelの方がずっと簡単だと思います。ただし、私の会社ではGoogleスプレッドシートを使用しているため、方法を把握する必要があります。
基本的に、「12/19/11」のような日付値を含むセルがあり、「DT 30」のような値を含む別のセルがあります。私に割り当てられたタスクは、日付に値30(日)を追加することであるため、結果は「1/19/2012」になるはずです。
Googleスプレッドシートでいくつか試しましたが、2つの質問があります。 1つ目は、文字列「DT 30」から数値「30」を抽出する方法です。2つ目の質問は、Google Docsに組み込まれた日付追加機能がないようです。
専門家から提案がありますか?
文字列から数値を抽出するには、次の2つの関数を使用できます(セル「A1」に値があると仮定します)。
=VALUE(REGEXEXTRACT(A1, "\d+"))
これにより、数値が取得されます。
ドキュメントに日付追加機能は見つかりませんでしたが、日付を内部日付番号に変換してから日数を追加できます(値がセル「A2」の場合):
=DATEVALUE(A2) + 30
これが役立つことを願っています。
シンプルに保つのが好きです。 A1が日付を保持し、B1が追加する月数を保持する場合、
=date(year(A1),month(A1)+B1,day(A1))
必要な結果を計算します。同じ方法を数日または数年使用できます
日付のセルに番号を追加するだけです。
したがって、A1: 12/3/2012
およびA2: =A1+7
その後、A2は2012年12月10日を表示します
DATE(Year; Month; Day)を使用して、日付に操作を行うことができます。
例:
=DATE(2013;3;8 + 30) give the result... 7 april 2013 !
=DATE(2013;3 + 15; 8) give the result... 8 june 2014 !
非常に驚くべきことですが、うまくいきます...
EDATE(Start_date, months)
の直接使用は、ADDDateの仕事をします。例:
A1 = 20/08/2012
およびA2 = 3
=edate(A1; A2)
20/11/2012を計算します
PS:dd/mm/yyyy
私の例ではフォーマット
@ kidbraxの答えと同様に、+
は日を追加します。これを機能させるには、セルデータを明示的に日付として宣言する必要がありました。
A1: =DATE(2014, 03, 28)
A2: =A1+1
A2の値は2014年3月29日です
=TO_DATE(TO_PURE_NUMBER(Insert Date cell, i.e. AM4)
+ [数値を追加する日数。 3日])
実際には次のようになります:
=TO_DATE(TO_PURE_NUMBER(AM4)+3)
基本的に、日付を純粋な数値に変換し、再び日付に戻します。
Burnashで使用されているのとほぼ同じアプローチを使用して、最終結果に使用できます...
=regexextract(A1,"[0-9]+")+A2
ここで、A1はテキストと数字を含む文字列を格納し、A2は関心のある日付を格納します
単純な加算と逆変換の何が問題になっていますか?
a1が日付フィールドであり、A2が追加する日数を保持している場合:= TO_DATE((DATEVALUE(A1)+ A2)
A1に12/19/11
、B1にDT 30
を含む新しいスプレッドシート(米国ロケール)の場合:
=A1+right(B1,2)
たとえば、C1は1/18/12
を返します。
文字列関数としてRIGHTはTextを返しますが、追加時に強制的に数値に変換できます。日付に数値を追加すると、1つは1日として扱われます。 (非常に広い)制限内で、月と年は自動的に調整されます。