- ベストアンサー
エクセルについて
エクセルの形式でたとえば日付と年でA1セルに1998.01.04 A2セルに1998.01.05 でこの形式で土曜日と日曜日にかかる日付だとのぞいて祝日はいれて連続して同じ形式で1999年までいっきに簡単にエクセルにだせる方法はありますか?それが無理なら土曜日日曜日自分からけしていいのでいッきにやろうとしたら2月の切り替え日に1998.01.32とでてきて次も33日とつづいてでてきて1998.02.01とでてこないのですが何かいい方法はないのですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
A1セルに1998.01.04と文字列で日付を入力している場合、A2セル以下に土日を除く日付を文字列として表示するなら以下のような数式を利用します。 =TEXT(SUBSTITUTE(A1,".","/")+(WEEKDAY(SUBSTITUTE(A1,".","/"))=6)*2+1,"yyyy.mm.dd")
その他の回答 (3)
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! おそらく、A1セルの >1998.01.04 は文字列として判断されるのでは? そこでB1セルに =IF(WEEKDAY(SUBSTITUTE($A$1,".","/")+ROW(A1)-1,2)>5,"",SUBSTITUTE($A$1,".","/")+ROW(A1)-1) という数式を入れオートフィルでずぃ~~~!っと下へコピーしてみてください。 (B1セルの表示形式は「日付」にしておきます) これで土・日の行が空白になります。 B列すべてを範囲指定 → オートフィルタ → オートフィルタのオプションで「空白セル以外」を選択しOK これで土・日以外の日付だけが表示されますので、 B列すべてを範囲指定 → コピー → 適当な場所に貼り付け これで何とか希望に近い形にならないでしょうか?m(_ _)m
補足
これでやりましたがうまくいきませんでした。下にまでやりましたが1998.1.31の次が1998.2.1ででず1998.1.32でやはりでてしまいます。どうすればうまくできるかわかりますか?あと土曜日日曜日の日づけは利用しないので土日はとばした日付でうめてどんどんできればいいのですが。
- multiface
- ベストアンサー率36% (308/834)
A1は日付形式で入力してあるとして、次の計算式をA2に入れてください。 =IF(WEEKDAY(A1+1,2)=6,A1+3,A1+1) あとはこの式を必要なだけ下方向にコピーすればよいです。 要点は、一つ上のセルに1日を足したら土曜日になったことを判定し、その条件なら一つ上のセルに3日を足す(=金曜日の次は月曜日まで進める)ということです。
お礼
ありがとうございます。とりあえず書いてあるとおりにやッてみます。
補足
これでやりましたがうまくいきませんでした。下にまでやりましたが1998.1.31の次が1998.2.1ででず1998.1.32でやはりでてしまいます。どうすればうまくできるかわかりますか?あと土曜日日曜日の日づけは利用しないので土日はとばした日付でうめてどんどんできればいいのですが。
- 佐藤 志緒(@g4330)
- ベストアンサー率18% (840/4653)
もう一度、日本語で質問を書いてください
お礼
やッてみました。そしたらできました。時間が短縮できてありがとうございます。今後も正確のある回答お願いします。