• ベストアンサー

【エクセル または OpenOffice】 A列が数値で、B列が空白の行の数をカウントしたい

たびたびお世話になります。 A列が数値で、B列が空白の行の数をカウントしたいのです。 =COUNTIF(A1:A100,"B1:B100=""") この記述ではうまくいきません。どこが間違っているでしょうか? 【追伸】 実はエクセルの代わりにOpenOfficeを使っています。 OpenOfficeの場合、同じ記述で大丈夫でしょうか?(引数の区切りがセミコロンであること以外で)

noname#13261
noname#13261

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

  • ベストアンサー
  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.3

こんにちは~ 「時間内」がA列、「残業休出」がB列とします。 ★ OpenOfficeは使ったことがないのでわかりません。 EXCELなら、 ↓「勤務日数」( A列またはB列が空白ではない行のカウント ) =SUMPRODUCT(((A2:A10<>"")+(B2:B10<>"")>0)*1) ↓「うち休出」( A列が空白で、B列が空白ではない行のカウント ) =SUMPRODUCT((A2:A10="")*(B2:B10<>"")) こんな感じです。

noname#13261
質問者

お礼

できましたよ! OpenOfficeでは、 「勤務日数」のほうの末尾の「*1」をとったらうまくいきました。 =SUMPRODUCT((A2:A10<>"")+(B2:B10<>"")>0) 「うち休出」のほうはそのままで大丈夫でした。 =SUMPRODUCT((A2:A10="")*(B2:B10<>"")) ありがとうございました!

noname#13261
質問者

補足

ありがとうございます~ 取り急ぎお礼まで。 実際にやってからまたカキコします。

その他の回答 (2)

  • wakasi
  • ベストアンサー率41% (49/117)
回答No.2

例えば、 C1セルに=IF(OR(A1>0,B1>0),1,"") の数式を入れ、C100までこの数式をコピーする。 D1セルに=IF(AND(A1="",B1>0),1,"") の数式を入れ、D100までこの数式をコピーする。 そして、 勤務日数は、=COUNT(C1:C100) うち休出日数は、=COUNT(D1:D100) で計算できます。

noname#13261
質問者

補足

どうもです。 やはりそのやり方しかないですかね。 集計用のセルを用いずに一発で集計する方法がきっとあると思っていたので・・・ もちろん自分でも引き続き調べています・・・

  • wakasi
  • ベストアンサー率41% (49/117)
回答No.1

A列のセルが数値か空白が入力されており、 数値のセルのみをカウントする。 B列のセルのうち空白のセルをカウントする。 その合計を知りたいというのであれば、 =COUNTA(A1:A100)+COUNTBLANK(B1:B100) で出来ます。 OpenOfficeはよくわかりません。 すみません。

noname#13261
質問者

お礼

ちなみに0時間の場合は空白セルにしています。

noname#13261
質問者

補足

回答ありがとうございます。 教えてほしかったことと少しずれているようです。 実は具体的には次のようなデータを集計したかったのです。 時間内 残業休出 8:00  1:30 8:00  1:00 8:00 8:00  1:30 8:00  0:30     9:45 これを集計して 勤務日数 6日 うち休出 1日 という計算をしたかったのです。

関連するQ&A

  • 《エクセル2000》条件にあった行のみ、数字の個数をカウントする?

    皆様、こんにちは。 A1~B20の範囲に数字と空白が混在しています。 「A列に数字が入っている行のみ、B列に入っている数字の個数をカウントする(A列に空白が入っている行はカウントしない。A列に数字が入っていてもB列に入っていなければもちろんカウントしない)」 …という式は作れるでしょうか。 合計はSUMIFを使えばいいのですが、同じ式をCOUNTIFには流用できないんですね(困惑)。 (↑これも以前ここで聞いて、教えて頂いたのですが) どうかどうか、よろしくお願いします。

  • Excel2003で、指定列に空白セルのある行の数をカウントしたいので

    Excel2003で、指定列に空白セルのある行の数をカウントしたいのですが。 下記の様なセルがあり、A列とC列が共に空白の行の数をカウントしたいのですが どの様にすれば良いでしょうか? (3行目と6行目がA列とC列のセルが空白なので、「2」を表示したいのです)  ABC 1あか 2い さ 3 き 4う 5え し 6 く 7 けす 宜しくお願い致します。

  • Excelで同数値の数を数える

    次のような数値があるとします。  A   B   C   D  201   1   205   2           201   2   205   1   203   1  行A、Cには201、202などの値がランダムに 表示されています。(関数で表示された値です) 行Bには、例えばB1にはA1:A3の範囲中にA1セルで表示されて いる値と同じ値がいくつあるかをカウントしてあるのですが、 このカウントに関数を使いたいのです。 行Dには、A1:C3の範囲で同じようにカウントした結果を表示 させたいと思います。 同じ行に同じ値が表示されていることはありません。 AとCのセルが空白の場合はBとDも空白にしたいため、 IF(A1="","",COUNTIF($A$1:$A$3,A1)) と入力してみたのですが、空白セルに関数があるせいか、 空白セルまでカウントされてしまいます。 行Aの関数を消すとうまくいくのですが、 消さずに、空白セルをカウントしない ようにする方法はあるでしょうか。 お返事お待ちしています。  

  • 列内の数値の個数をカウントする

    A  B  2 101 3 101 4 101 5 102 6 102 7 103 上記のような状態の時、101、102、103の個数をカウントしたいです。 =COUNTIF($A$2:$A$7,101) でカウントできるかと思うのですが、この関数を下方向にコピーして、102、103も数えたいのですが、関数がわかりません(実際には、101、102、103どころではなく、約1000までの連番について数値をカウントしようとしています) 数値ごとに手作業で、=COUNTIF($A$2:$A$7,101)の101の部分を変えるわけにはいかないので、どうか上手い関数を教えていただきたいです。 よろしくお願いします。

  • Excelで特定の数値が入った行の別列の数値を集計

    ExcelのA列にそれぞれ空白 or 1、2、3いずれかの値が入っています。 B列には行ごとに異なる数値(1、2、3、4)が入っています。 A列とB列の行数は同じです。 それぞれの数値を下記の通りにまとめたいと考えています。 ・A列に「1」が入っている行のB列の数値を集計し、その数をA100に入れる ・A列に「2」が入っている行のB列の数値を集計し、その数に1.5を掛けた値をA101に入れる ・A列に「3」が入っている行のB列の数値を集計し、その数に2を掛けた値をA102に入れる 上記はどのような計算式で実現できるでしょうか? よろしくお願いします。

  • 条件にあてはまるデータの数をカウントするエクセルVBA

    下記のようにA列に1~3のコードがありB~E列には測定値があります。 B列以降の測定値のカウント(+3の個数、+2の個数…)を列ごとにVBAでカウントしてます。 A列に関係なくカウントするコードは記述して実行できましたが A列の条件が1の時だけカウントするVBAが良くわかりません。 シート A    B    C  ・・・E 1    -1   +1  ・・・ 1    +2   0 2     0   0 3    -3   0 1    -1   +3 101行目以降 +3    カウント数 … +2      〃 +1      〃 0       〃 -1      〃 -2      〃 -3      〃   A列に関係なくカウントするコード sub カウント() Dim 行 As Long Dim 列 As Long For 列 = 2 To 5 For 行 = 101 To 107 Cells(行, 列).Value = Application.WorksheetFunction.CountIf(Range(Cells(2, 列), Cells(100, 列)), Cells(行, 1)) Next 行 Next 列 End Sub

  • 2つの列の空白セルのカウント

    A列とB列に数字が入っている表があるとして、まずA列が空白であり、 かつB列も空白であるデータの個数ををカウントしたいのですが、 どういう式で解決できるでしょうか。 COUNTBLANKで試みましたが、複数条件ではうまくいかず困っています。

  • エクセルでA列の数値にB列以降の列の数値を乗じて各列の最終行に合計を出したい

    エクセルで集計をしたいのです。 うまく説明できませんが教えてください。 列数が100列以上ある集計表です A列の1~20行の固定した数値にB列~100列以上の1~20行の各列の数値を乗じてそれぞれの列の合計をそれぞれの列の21行目に出したいのですがどうしたらいいか教えてください。

  • E列のセルに数値が入れば(空白でなければ)B列の同じ行のセルに色がつく

    E列のセルに数値が入れば(空白でなければ)B列の同じ行のセルに色がつくようにしたい。 エクセル2007です。 条件付き書式で、数値を入れたセル自体に色をつけることはできたのですが他の列を参照することができませんでした。 どうやって設定すればいいでしょうか。

  • エクセルで文字の数をカウントしたいのですが、

    エクセルで文字の数をカウントしたいのですが、 うまくできません。 データを文字列で 112 134 234 235 567 とあり、「1」の数を数えたいです。 関数で =COUNTIF(B1:B5,"*1*") とやると結果は 2 になってしまいます。(本当は3と出てほしい) データ、区切り位置でやる方法も見つけましたが、 この方法で結果を出すことはできないでしょうか? よろしくお願いします。

専門家に質問してみよう