• ベストアンサー

複数セルを対象に特定の文字のみ計算結果を表示させる

添付のE列のように、A列の日付に対して、B~Dの中で「○」のみが表示されている行に対してのみ、3営業日目を表示させるにはどうしたらよいでしょうか。 Workdayは別シートに反映済みとします。 当初、B~Dが空欄の場合は数式を反映しない、というふうにしていましたが、 空欄だけでなく添付図のように「○その他」も除外したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • msMike
  • ベストアンサー率20% (363/1775)
回答No.5

E2: =IF(COUNTIF(B2:D2,"○"),WORKDAY(A2,3,HolidayList),"")

mmmtter
質問者

お礼

できました!!説明が足りない部分がありましたが、こちらでできました。 ありがとうございました。

その他の回答 (5)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

 今仮に、御質問欄に添付されている画像の表が存在しているシートがSheet1であり、Sheet2のB2~B18のセル範囲に祝祭日等の「土日以外の休日」の一覧表が作成されているものとします。  その場合、E2セルに次の関数を入力してからE2セルをコピーして、E3以下に貼り付けて下さい。 =IF($A2>=1,IF(AND(ISNUMBER(DAY(A2)),COUNTIF($B2:$D2,"〇"),COUNTIF($B2:$D2,"*?")+COUNT($B2:$D2)=COUNTIF($B2:$D2,"〇")),WORKDAY($A2,3,Sheet2!$B$2:$B$18),""),"")

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.4

》 Workdayは別シートに反映済みとします それは具体的にどういうことですか?

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

>Workdayは別シートに反映済みとします。 意味不明です。 Aの日付を元にB、C、D列の○のみ記載の行についてE列へ3営業日後の日付を代入すれば良いのでしょうか? 提示の画像から判断すると土日と祝祭日が休業ですよね? 祝祭日が入力されているセル範囲は何処になりますか? 仮にその範囲に祝祭日と言う名前が定義されているときは次の数式で良いでしょう。 E2=IF(COUNTIF(B2:D2,"○")>0,WORKDAY(A2,3,祝祭日),"") E2セルを下へコピーしてください。

mmmtter
質問者

お礼

説明が足らずすみませんでした。 別シートに土日祝日を反映していましたが、 そちらも図にのせる、もしくは名前の定義をしてそれをお知らせするべきでした。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.2

当初、B~Dが空欄の場合は数式を反映しない、というふうにしていた式の、「B~Dが空欄の場合」を「A2&B2&C2="○"」に変更してみてください。

  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.1

こんにちは セルE2に =IF(COUNTIF(B2:D2,"○")>0,WORKDAY(A2,3),"") で、下方にフィルコピーでしょうか?

mmmtter
質問者

お礼

できました!ありがとうございました。

関連するQ&A

  • 複数セルから特定の文字を検索して、その対象セルを抽出したい

    エクセルで関数、VBAを使用して、下記のようなDATA抽出を行ないたいのですが、どなたか、ご指導いただけないでしょうか。 たとえば、2種のシートが、各々、 <シート1>   列A   列B 行1 A1 ABCD-123 行2 B23 EFGH-456 行3 C456 あいうえお <シート2> 列A 列B 列C  列D  列E 行1 A1 A2 A3 行2 B23 C5 A4 行3 A5 B2 C456 ・・・・・・・となっている場合、 <シート2> の列D  行1 へ "A1"と入力(記載)がある場合、列Eに   ”ABCD-123”と表示(抽出)を行ないたい。 セルには、文字、数字、記号が入ります。 よろしくお願い致します。

  • 特定のセルが空白の時、任意のセルを非表示にする

    エクセル2007を使用しています。 A列に受付日、D・J・N列にWORKDAYで3種の営業日を表示するようにしました。 このD・J・N列ですが、A列が空白でも日付を表示します。 A列が空白のとき、D・J・N列は非表示にしたいのですが、 どのようにしたら良いのでしょうか。

  • IF関数にて結果を表示したい?

     お世話様になります。 A列に日付け(1~31)1行目~31行目 B列に 日付けに対応して数値を入力します  各日付けに入力した数値に8を掛けた結果をB列32行目に表示をしたい。  その日の表示だけで、過去の表示は不要です。  今までは数式の行を書き換えて使用してきましたが  もっと簡単に表示できればと思い、宜しくお願いします。

  • セルに数式を入れずに計算結果のみを入力

    B2:D11まで入力された文字と数値がありB,C列のマッチした文字の計算値をH列にいれたいのですが現在H列はVBAによりセルに数式が入っておりますが計算結果のみをH列に入力したいのですが尚、図では11行までですが行数が多い時を踏まえてVBAコードをご教授願います。

  • 範囲内である文字列が含まれていたら,違うセルに表示させる

    A4:A10という範囲(同じ行)の中に,ある文字列が含まれていたら,違うセルに○と表示する,それ以外は空欄という式をつくるにはどうしたら良いでしょうか。 文字列は同じ行の中で同じ文字が1回以上登場することはありません。 A B C あ い う か き く・・・ D E F い え お き く こ・・・ G H I う お い こ け き・・・ 1行目の文字列(あいうかきく)の行の中に「あ」が含まれていたらAセルにアと表示し, 3行目文字列(うおいこけき)に「う」があったらIにウと表示する。それ以外は空欄。 アルファベットのセルには色をつけたりといった書式条件ではなく特定の文字列を表示させたいです。 「IF(B42="あ","ア",""」の場合,B42のセルの中身が「あ」だったらアと表示する,それ以外は空欄。という意味になりますでしょうか? これで,B42セルだけではなくB42:B50という範囲の中に「あ」という文字列があったら…と思いましてご相談です。宜しくお願いします。

  • エクセル2010 複数の表から対応するセルの最大値

    エクセル2010を使っています。 同じ行列数をもつ複数の表の、それぞれのセルの最大値を求めたいです。 添付した図で、やりたいことを詳しく説明します。 この図には、frame1,frame2,frame3,の3つの表(A列からD列の部分)があります。 3つの表は、すべて3列5行の表です。 これらの表の同じ行列に相当するセルの最大値を、一つの表(F列からI列の部分)にまとめたいです。 つまり、 B3とB10とB17の最大値を、G3に表示して、 B2とB11とB18の最大値を、G4に表示して、 ・・・ D7とD14とD21の最大値を、I7に表示する。 です。 (実際の表は37行45列で、表の数が200あります。) どうぞよろしくお願いします。     

  • EXCEL2003出納帳残高欄の、計算結果がある最終行の数値を取り出し

    EXCEL2003出納帳残高欄の、計算結果がある最終行の数値を取り出したいのですが     A     B     C     D 1  日付   入出金   残高 2  繰越          30 3 8/1   100   130 4 8/2  -130     0 5 8/2    40    40 6               - 7               - 8               - 9                現在残高 40        途中には空白行はなく順に入力します 入力する行数は未確定です 残高は"0" の場合もあります C列2行目は 数式「=B2」  C列3行目から8行目までは 数式「=IF(B3=0,0,C2+B3)」 現在残高を表示したいのですが、 ここD列9行目には数式 「=LOOKUP(10^5,C3:C8)」 としてますが、 C列の6~8行目までは計算式が入ってるので、 その値”0”となってしまうようです。 また、 数式「=INDIRECT(ADDRESS(COUNT(C2:C8)+1,3))」 という式も入れてみましたが、”0”となってしまいます。 計算結果のある最終行の値 "40" にするにはどうしたらよいでしょうか?

  • 選択セルに計算結果を表示

    エクセルVBAで選択セルに計算結果を表示したいのですが、教えてください。 A列には、ID B・C列には値が入力されています。 下記の構文ですと、行のどこをダブルクリックしても、D列に合計が表示されます。 D列以降のどの行をダブルクリックしても、アクティブなセルに合計を表示したいです。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cells(Target.Row, 4) = Cells(Target.Row, 2) + Cells(Target.Row, 3) End Sub

  • 複数の条件に合う行の特定のセルを返す

    ほぼ同じ質問をいくつか見かけたのですが、その式を自分の内容に置き換えても全く希望通りの結果が出ず、質問させてください。 2 1 Aさん 4 1 Bさん 5 1 Cさん 2 2 Dさん 5 2 Eさん セルのA1には「2」、B1には「1」、C1には「Aさん」と入ったシートがあり、例えばセルのD1に A列、B列ともに「2」が入力されている4行目のC列「Dさん」という値が反映して欲しいのですが、その関数が分からなく困っています。 他にもA列が「5」、B列が「1」の結果が(Cさん)が欲しい時もあり、条件にはA列の値とB列の値を使う方法で考えています。 お知恵を貸してください。

  • Excel2003 検索して値の参照

    お世話になります。 掲題の件で ご相談が御座います。 添付のような表がありまして、シートが2枚に分かれております。 数式を入れたいシート(表示用シート)に参照元シート(入力用シート)を図で貼り付けました。 ピンクの表が入力用シートになります。 入力用の「C列"エリア"」を「D列"更新日"」を参照して 日付が横並びになっている 表示用シートに各項目を反映させたいのですが、どのような数式を入れたら良いのか、 また そもそも表の作りに無理があるのか?と ちょっと煮詰まってしまっている状態です。 入力用シートは更新日と備考以外はプルダウンで選択するようにしています。 反映させたい表示用シートには「A列」に「エリア」が北海道~沖縄まであります。 日付は10月~3月まで用意されており 3行目、15行目、27行目、39行目、52行目に「月」が入っており、 4行目、16行目、28行目、40行目、53行目に「日」が入っております。 さすがに 2行にまたがった日付を参照するのは無理があるだろうと思い 1行目にフォントの色「白」で「2009/9/25」等 該当する列に日付を入れました。 しかし、その後に 入力用シートのC列D列を参照して どうやって 表示用シートに反映させたら良いかで困っております。 作業列を作るにしても どうやったら良いものやら、、 そもそも 全部横並びになっている所に無理があるのでしょうか? どなたか お分かりになる方がいらっしゃいましたら宜しくお願い致します。 説明不足等 御座いましたら何なりとお申し付けください。 宜しくお願い致します。

専門家に質問してみよう