• 締切済み

エクセルで串刺し集計で数字の個数を読み取りたいのですが

ひょっとしたら簡単かもしれないのですが この間から長いこと調べてみているのですがわかりませんので どなたかお教え下さい。 串刺し集計の際に 例えば 31日分のシート(小の月なら30日:30枚のシート) のA:1(シートのセル位置は31枚とも同じ)のセルに数字の0~7迄を入力し(都合で文字扱いに出来ません)その中から最終のシートに 0が何個、1が何個・・・・・・・7が何個と表示するためには 32枚目(小の月なら31枚目)のシートにどういった計算式を入れたらよろしいのでしょうか、宜しくお願いいたします。

みんなの回答

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.4

一案ですが 1日目のシートのタブをクリック 31日(或いは30日)目のシートのタブを Shiftキー押しながらクリック 最初のシートで作業します。 1行目に行を挿入 A1セルに =IF(A2=COLUMN(A1)-1,1,"") 右へ8個フィル それぞれのセルにA2が0の場合は A1に 1 1の場合は B1に 1 ・・・ になります。全てのシートが同じ計算式が入ります。 後は、32枚目のシートに串刺しの合計でそれぞれのシートの1行目にセルを合計してみてはいかがでしょうか。 将来的には、皆さんがおっしゃられるとおりシートの構成を見直すべきです。 1日 1シート 1月 1ブック では、日を跨ぐ集計、月を跨ぐ集計で 大変厄介になります。 残念ながら簡単なものにはなりません。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

この質問だけに対して言えば、シート設計の失敗でしょう。別シートにすると、現状のExcelでは関数がそのほとんどメリットを享受できなくなり、難しくなること身にしみるでしょう。 まだしも集計は集計・統合などありますが。 http://www.eurus.dti.ne.jp/~yoneyama/Excel/ex-q-a/q_keisan_fukusu.html#kusizasi ーー 関数での答えが出ているようですが VBAででもやるほか無いと思います。 ーー 下記例では 簡単の為にSheet1からSheet5の5枚とします。 その中にはシートタブ位置的に対象のシート以外の他のシートは混じらないようにする。 Sheet1のA1ーー 1 Sheet2のA1ーー 4 Sheet3のA1ーー 3 Sheet4のA1ーー 2 Sheet5のA1ーー 1 とする。 最左のSheet1のタブをクリックし、SHIFTキーを押しながら最右のSheet5のタブをクリックする。作業グループになる。 ーー コード Sub test02() Dim t(10) Dim sh As Worksheet For Each sh In ActiveWindow.SelectedSheets x = sh.Cells(1, "A") t(x) = t(x) + 1 Next For i = 1 To 10 Worksheets("Sheet1").Cells(i, "C") = i Worksheets("Sheet1").Cells(i, "D") = t(i) Next i End Sub をVBEの標準モジュールに張り付け実行する。 Sheet1のC1:D10に 1 2 2 1 3 1 4 1 5 6 7 8 9 10 が出て、数字頻表が出来る。 ーー シート名はどういう名であろうと関係ない。 シートの順序・日付順も関係ない。 余分なシート名は作業グループに入れる指定はしないこと。 ーー 簡単なコードであるが、私としては諸所に長い経験が詰まったコードです。 そういう風に難しくなりますよということ。

kurige1949
質問者

お礼

ご提案ありがとうございました。 毎日に日報入力ですので、シート単位にした方が 運転手さんには簡単かなと思っていますが(皆さんエクセル自体 を扱うことが初めてなので)その辺はもう少し考えてみます。 VBAはなかなか歯が立たないですが、やってみようとも思っています。 なんにしてもありがとうございました。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

串刺しでCOUNTIF関数は使えないので奥の手です。 もしシート名がSheet1~Sheet31というように連番になっているなら 仮にA1が 2 の個数は =SUMPRODUCT(COUNTIF(INDIRECT("'Sheet"&ROW(1:31) & "'!A1"),2)) です。 もしシート名が1日~31日というように連番になっているなら 仮にA1が 3 の個数は =SUMPRODUCT(COUNTIF(INDIRECT("'"&ROW(1:31)&"日"&"'!A1"),3)) 小の月は31を30になおして下さい。

kurige1949
質問者

お礼

ありがとうございました。 早速今からやってみます、何とかなるといいんですが。 とにかく、皆さんよりのご助力ありがとうございました。

  • rin01
  • ベストアンサー率43% (33/76)
回答No.1

こんにちは~♪ 出来なくはないのですが。。 回答ではありません。。 1日1つのシートというのは、何か事情が あるのでしょうか? 出来れば、データ集計の元になるマスターシートは 1つにした方が、集計等にはいいですね。。 みやほりんさんの失敗談 ↓ 下記の参考URL もご覧ください。。 。。。Ms.Rin~♪♪

参考URL:
http://miyahorinn.fc2web.com/schooltxt/Ex060120.html
kurige1949
質問者

お礼

早速の回答ありがとうございました。 一枚のシートにならないか検討をしてみます。

関連するQ&A

  • 【Excel VBA】串刺し集計について

    Excel VBA初心者です。 串刺し集計について質問させてください。 同じ構成のシートが3つあります。中には数字や文字列が入っています(各シートの同じセルに数字と文字列が入ることは無し)。 串刺しのイメージで数字が入っているセルは合計を、文字列が入っているセルにはどれか1つ(規則もマクロに入れる、例としては○、×、-であれば○など)を合計用の同じセルにいれたいのですが、マクロの組み方をご教授願います。

  • エクセル2003の「串刺し集計」について教えてください。

    年度別の売上等の集計表を作っています。 月毎にシート名を「0604」、「0605」・・・とし、半期毎にも集計を かけたいと思っています。(0604~0609のシート間) それぞれのシートは同じ表で、B列に「曜日(月~日)」が D列には「客数」が入っています。 そこで「特定の曜日の客数」を半期毎の集計シート(0609の後)に 表示させようとして、下記のような関数を入れました。 =sum('0604:0609'!,sumif($c$2:$c$30,"月",d2:d30)) しかし、「入力された数式は正しくない」と表示されてしまい ヘルプを参照しましたが、一般的な入力時の注意だけでした。 SUMにはSUMIFを組み合わせられないのでしょうか? 参照するセルの値が変わっても、集計結果に反映される関数を 教えていただけませんでしょうか。

  • 同フォルダ内の串刺し集計と文字列結合のマクロ作成

    同じフォルダ内に同じ形式のファイルがいくつかあり、ブック間で数値の串刺し集計と、文字列を結合して集計できるマクロの作成がしたいです。 フォルダ内には各所から送付されてくる同一フォーマット書類『(回答)**.xls』が多数あります。 「**」にはそれぞれの部署名が入っており、シート名は『回答』となっています。 各ファイルの『回答』シート F5~F32セルまでには数値が入力されています。 同じく各ファイルの『回答』シート G5~G32セルまでには文字列が入力されています。 これらを同一フォルダ内にある『集計ファイル.xls』の『集計』シートに集計をしたいのです。 F列は数値なので串刺し集計、G列はそれぞれバラバラの文字列のため「,」で区切って文字を結合をしたいと思っています。 (G列イメージ) あああ,XX,○△△,・・・ このようなマクロを同一フォルダ内にある『集計ファイル.xls』に作成することはできるのでしょうか? よろしくお願いいたします。

  • 追加するシートに集計される串刺し計算について

    エクセルの串刺し計算で質問です。 4月(集計) 3月 ひな形 ※4月のシートにこれをいれてます。 =SUM('4月月初:ひな形'!G21) この順番だと、4月のシートに4月からひな形までのシートが合計されますが、 次の月には5月のシートが先頭に追加され、 5月から3月の計算を入れたいです。 5月(集計) 4月 3月 ひな形 ひな形をコピーして最初のシートとひな形の間に挟むと 集計シートに集計されると思いますが、 今回の集計シートは固定した集計シートではなく 毎回新しく追加するシートが集計シートとなります。 どうやったらよいかわからないので、教えて頂けると助かります! ※質問内容がよくわからないようでしたらご指摘ください。。  再度ご説明します!

  • 複数のシートの○×記号の串刺し集計

    エクセルで次のような表のデータが1ヶ月分、31日分あり ます。すなわち31枚のシートに同じ表で中の○× の内容が違うデータがあります。 ア イ ウ エ オ (1) ○ × × ○ ○ (2) ○ ○ ○ × × (3) × × ○ ○ ○ (4) ○ × × ○ ○ そして○をゼロ、×を1と数えて、 31枚のシートの○と×を集計して 32枚目のシートに結果を示したい のです。 例えばこんな感じ32枚目のシート に計算結果を表示したいです。 ア イ ウ エ オ (1) 7 4 5 0 0 (2) 8 5 0 2 2 (3) 1 1 0 1 0 (4) 0 0 4 6 8 31枚のシートの○と×を数値に 変換し、それを串刺し集計した いのです。countifは串刺し集計 で使えないようですし、上手い やり方があれば、教えて戴き たいです。 宜しくお願い致します。

  • Excel2000で条件付きの串刺し計算は可能か?

    タイトル通りなのですが詳細を書きます。 sheet1からsheet100まで全く同じフォーマットの集計 シートがあります。 シートを甲乙丙の3種類に分類するため、各シートのA1セル 、B1セル、C1セルの何れかに数字の「1」を入れてフラグを 立てています。 A2以下のセルには関数等で計算された数値があります。 ここでA1のセルに「1」が入力されているシートのみの数値を 甲合計シート、B1のセルに「1」が入力されているシート のみの数値を乙合計シートにという感じで串刺し算で求め たいのですが、SUMIFではうまくいきませんでした。 甲合計シートのA2セルに関数がおかしいのは承知で =SUMIF(Sheet1:Sheet100!A2,A1=1,Sheet1:Sheet100!A2) と入力してもダメでした。 当方VBAは全く知らないのですが、条件付の串刺し算は 関数では実現できないのでしょうか? VBAでなら可能というのであれば、その方法を教えて いただけませんか?

  • エクセル2010の串刺し集計で質問です。

    それぞれのシートで合計のセル番号が変わらない時には分るのですが あるシートで行数が減ったり、増えたりした場合、合計のセル番号が変わります。 その時に、串刺し計算をした場合、以前の合計のセル番号を参照してしまい きちんとした全体の合計ができないのです。 合計セル番号が変わった時にも、自動的に移動した合計セル番号を参照するようにするには どのようにしたらよいのでしょうか。 初心者の説明ですみません。 よろしくお願いいたします。

  • 串刺し計算エクセル 一部シートをメールに添付したい

    excel2003を使用しております。 book内に15シートほどの集計表があり そのうち1シートは全シートを串刺し計算した総集計です。 その総集計の1シートのみをメールで送信したい場合 どうやって送ればいいのでしょうか。 串刺し計算の入っているすべてのシートを送るしかないのでしょうか。 お時間あるかたいらっしゃいましたら 回答よろしくお願いいたします。

  • エクセル:串刺し計算について

    お世話になります。 エクセルの串刺し計算について教えてください。 Sheet1,2は計算しないシートです。 Sheet3のA1セルにSheet4~Sheet10のA1セルの合計を出す。ここまでは簡単なのですが、ここでSheet4から右にあるシートすべてというようには出来るのでしょうか? シートが追加されても対応できるようにしたいのです。 Sheet4スタートというのは固定です。 よろしくお願いします。

  • エクセル2003 表 集計

    エクセルの表の集計方法について質問します。 各月のシートに記入された内容の内ボールペンの数量だけをまとめの表のように集計したいですのですが、どうすればいいのでしょうか?尚、各月のシートのabcd・・・又はボールペン等の位置が変わる場合もあります。現状、INDEX+MATCHの組み合わせで、計算式に入るシート名のみ手入力で修正し対応しています。シート名の変化(4月,5月・・・)についても、セルに入力された内容を利用できないか教えて頂けないでしょうか?宜しくお願い致します。

専門家に質問してみよう