2017-02-13 10 views
-1

ユーザーの年と月から2つの入力を取り込み、その月と年の日付をExcelに入力します。例えば月と年のユーザー入力を取得して、その月と年の日付をExcelに入力します

は年を入力します:2017

は、月を入力します。月


2017年1月1日
2017年1月2日
2017年1月3日
1/4/2017 。 。 。 。

月と年が入力されると、セルに自動入力が行われます。 事前に提案していただきありがとうございます。

+0

あなたがこれまでに試したことと、それがうまくいかなかったことを示してください。 –

+0

私は解決策のためにインターネットをサーフィンしており、希望の日付を得るまで "+"アイコンをクリックしてドラッグすることを提案しています。 私はそれを私にしたいのですが、月と年とブームに入れてください!日付は自動入力されます。 :P – user3270849

答えて

0

文脈なしでは、必要なものが明確ではありません。ユーザーがダイアログボックスにデータを入力するか、2つのセルにデータを入力しますか?ユーザーはどのような形式で日付を入力する予定ですか?たとえば、1月は "Jan"、 "January"、 "1"などと入力する必要がありますか?おそらく、入力セルを参照する31個の式を設定する必要がありますが、その入力が最初にどのように処理されるかを正確に指定する必要があります。

EDIT:セルA1に

、データ検証ルールを設定しますので、ここで私の実際の答えはコメントではなく、答えであることを意味した

です。このルールは、「Jan、Feb、Mar、Apr、May、Jun、Jul、Aug、Sep、Oct、Nov、Dec」と指定したソース、または必要に応じて長い形式のリストにする必要があります。このセルを編集しようとすると、月のドロップダウンリストから選択するオプションがあります。

enter image description here

あなたにも年の範囲を制限したい場合は、セルB1に似た何かを行うことができます。ソースフィールドにカンマ区切りの有効年のリストを作成するだけです。

は、セルB3にこの数式を入力しA33にセルA3 31に番号1を入力します。

"=DATEVALUE(A3&"-"&$A$1&"-"&$B$1)" 

オートフィル/はB33までそれをコピー。 DateValue関数は、計算された文字列(たとえば、「13-Feb-2017」)を取得し、日付に変換します。これにより、エラー "#VALUE!"が生成されることに注意してください。いずれかの入力セルが空白の場合、または選択された月に31日がない場合は、自分のニーズに合わせて変更することができます。

+0

私は2つのセルにデータを入力するユーザーにしたい、そしてそのフォーマットは本当にimpではありませんが、 "jan"、 "january"を指定する場合は問題ありません。 – user3270849

0

これを仮定します。

セルB1はJ3での式で、

列IとJはこれを持ってyearsamp名前の範囲を作成し、毎年のように入力しtooks

セルD1をRNG名前の範囲を作成し、月のように、入力をtooks。

= IF(MOD(yearsamp、4)= 0,29,28)セル範囲上記

month days 1 31 2 29 3 31 4 30 5 31 6 30 7 31 8 31 9 30 10 31 11 30 12 31

名前は、このA2の数式とは、充填monthdays

使用として

=IF(VLOOKUP(mnth,monthdays,mnth,FALSE)>=ROW(A2)-1,DATE(yearsamp,mnth,ROW(A1)),"N/A") 

これを達成する別のオプションです。

よあなたはこの式も使うことができます。上記のように設定します。第一日の最初のフィールド上

A3でこのforulaを書く

=DATE(d1,MATCH(b1,I1:I12,0),1) 

A2上でこれを入力すると、あなたはそれがエラーを返す式31個の細胞を持っていたよう

=IF(ROW(a2)-1<VLOOKUP(mnth,mnthdays,2,FALSE),a2+1,"") 

を埋める際に、月の日数31未満ですが、この式はエラーなしで空白として表示されます。

関連する問題