- ベストアンサー
成績管理(個人カルテ)をエクセルで
学校に勤務しています。 タイトルは成績管理となっていますが、テストの結果等の数字の処理はなんとかできています。 ところが、個人懇談などに使う資料づくりをエクセルでしたいのです。 まず、クラスの名簿があります。 出席番号順に縦に名前が並びます。 横には項目が並びます。 たとえば、担当している係、また所属するクラブ活動などです。 こういう一覧は、普通に作成していますが、それをそのまま懇談などで使うと、本人の情報ばかりでなく、クラスの他の生徒の情報も見えてしまいます。 そこで、シートの2枚目以降を個人データのカルテのようにつくりたいのです。シートの2枚目は出席番号1番、3枚目は出席番号2番・・というように。 当然、一枚目の情報が2枚目以降に反映される必要があります。 私の頼りない知識では、セルに=を入力して、1枚目の必要なセルを指定すれば、反映させることはできます。しかし、それではひとつひとつすべて入力しないといけません。クラス30人分のシートをつくるだけでかなり時間がかかります。 便利な方法はないでしょうか。 また、すでにそういうシートの形式がどこかに紹介されていましたら教えてください。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
訂正です。もっといいやり方がありました。 1 B2に出席番号を入力すれば、データが自動的に変わりますので、シートを人数分用意する必要はありません。 元データのsheet1と個人データのsheet2だけで十分です。 2. sheet2で A1 =INDIRECT("Sheet1!R1C"&ROW(),FALSE) 以下項目の数と同じだけの行にオートフィル B2 =INDIRECT("Sheet1!R"&$B$1+1&"C"&ROW(),0) 以下A列の最後と同じ行までオートフィル とすればsheet2の2つのセルに関数を入力するだけで、後はオートフィルでできます。 もっとも、sheet2のA列は 1.sheet1のタイトルが入っている範囲をコピー 2.sheet2のA1を選択 3.「編集」-「形式を指定して貼り付け」で「行列を入れ替える」にレ点を入れて、OKを押す の方が手っ取り早いです。
その他の回答 (6)
- telescope
- ベストアンサー率54% (1069/1958)
簡単な方法です。 名簿のどこかのセルを選択して、 メニューバーの「データ」-「フォーム」を選択してください。 こんなので良かったら、使うときは、名簿のどれか一つのセルをクリックして、名簿が隠れる位置までスクロールして「フォーム」を選択すれば、他の生徒の情報は見えなくできると思います。 「検索条件」に出席番号を入れれば、その生徒の情報に飛びます。 生徒の情報をシートごとに分けるなら、 ピボットテーブルを使う方法も簡単です。 名簿のどれか一つのセルをクリックして、「データ」-「ピボットテーブル・・・」を選択します。 「ページのフィールド」に「氏名」を 「行のフィールド」に「係」「クラブ活動」などの項目をドラッグします。 「データフィールド」にも「氏名」をドラッグします。 各項目の計など不要なものは、右クリックで「表示しない」を選びます。 「ページフィールド」の「氏名(すべて)」を右クリックで「ページの表示」を選ぶと一瞬で各人のシートができあがります。
お礼
たくさんの方にアドバイスをいただいているので、まだ実際に操作していない段階ですが、本当に簡単そうなので、ぜひやってみます。 エクセルって奥が深いです。 自分はまだまだ入口にいるみたいですが・・・
- rukuku
- ベストアンサー率42% (401/933)
はじめまして マクロを使ってしまえば楽なのですが、このためにマクロを覚えるものまた大変ですので、マクロを使わない方法で考えてみました。 まず、30人分のシートはあきらめて、がんばって作ってください。 その30人分の各シートのA2に「出席番号」を入力してください。 こればかりはマクロなしの方法は思いつかなかったのでガマンしてください。 後は「作業グループ」と「INDIRECT」という関数を使います。 1.「作業グループ」については以下のサイトを参照してください。 複数のシートを一度に編集できます。 http://www.relief.jp/itnote/archives/000144.php http://soumukouboo.blog91.fc2.com/blog-entry-42.html 注意!!!! 「作業グループ」は複数のシートを一括して変更するのには便利な方法です。 しかし、「解除」を忘れて各シートごとで違うデータを書き込もうとすると、他のシートまで変更されて、直すのが大変になってしまいます。 2.「INDIRECT」関数 セルに=を入力して…の変形です。 元のデータが「sheet1」に入っているとして sheet2のB2に =INDIRECT("Sheet1!B"&$B$1+1) と入力すると出席番号に対応するB列のデータが表示されます。 …「+1」がついているのはsheet1の1行目がタイトルで2行目に出席番号1の生徒のデータが入っていることを想定しています。
- imogasi
- ベストアンサー率27% (4737/17070)
エクセルはデータを全て一覧する表のカタチでデータが作られる。 エクセルからデータ処理に入る人は、こういうニーズで戸惑うようだが。 対するもうひとつの対立概念として、伝票式という、選択した主体のみの様々な属性やデータを1画面または1ページにする表現方法・要求があり、エクセル側からは良くある要望です。 表計算普及以前の昔は A.データーー>エクセルの表のような帳票印刷・画面表示 B。データーー>伝票式帳票印刷・画面表示 を同列に考えたものだが、エクセルはシートがA。のタイプとなっていて、ほとんどA。の世界で済ましている。 ーー 今までも、ビジネスの用途で表から、請求書を作製(この場合の主体は顧客)などの質問が出ていて、何度も回答している。 他に個人別成績表の作製という課題のも有る。 過去の質問回答 http://okwave.jp/qa2798008.html などを参考にすること。 OKWAVEの類似タイプの質問では「imogasi 請求書」でGoogle照会すれば、相当数出てくる。そこには小生の回答のほかに、他の方の回答も見られる。 少し本格的には、VBAのプログラムを作ることになる。 もっと言えばデータを、アクセスのようなデータベースを作るのが良い。 プロのビジネス・システムではもっと本格的なデータベースソフトを用いて、画面作製や印刷プログラムを作るでしょう。 アクセス利用に少し似ているが 「台帳から顧客カードへ」という課題で Msクエリを使う方法もある(解説例「日経PC2006年5月号73ページ参照)
お礼
私には、少々難しく・・・すみません。 でも、「過去の質問回答」にあるマクロ(?)は、ちょっとやっとみようかと・・ ありがとうございます。
- koko88okok
- ベストアンサー率58% (3839/6543)
Wordの「差し込み印刷」機能を使うのがよいと思います。 Wordで「カルテル」の表を作り、差し込みフィールドを挿入し、Excelのデータを差し込みします。 差し込み印刷には、「差し込みウィザード」を使う方法と「差し込みツールバー」を使う方法がありますが、「差し込みツールバー」を使った方が簡単です。 「Word(ワード)講座 応用編:文書中への差し込み印刷」 http://www.eurus.dti.ne.jp/~yoneyama/Word/ouyou/w-sosi2.html 「差し込み印刷」 http://katori.cc/studyexcel/excel/sasikomi/p-1.htm
お礼
ありがとうございます。 使ったことのない機能ですが、イメージ通りの方法を教えていただいたような気がします。 やってみます。
- enraku-5th
- ベストアンサー率35% (159/449)
あえて生徒数分のシートを作らなくても、 1行目へオートフィルタを設定して生徒の名前でフィルタをかければその生徒分の情報だけを見せる事が出来ますが‥‥これで十分では?
お礼
ありがとうございます。 恥ずかしながら、オートフィルタという機能は初めて使います。 チャレンジしてみます。
- n-jun
- ベストアンサー率33% (959/2873)
別のシートから必要な項目をVLOOKUP関数で持ってくるとか? データを扱う時のいろいろな操作 1 http://www11.plala.or.jp/koma_Excel/contents3/mame3023/mame302302.html 1つのシートに30人分のデータを入れておいて隠し、表示したいシートには 出席番号を入れれば表示できるようにしておくとか。 ご参考まで。 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GGLG_jaJP310JP310&q=VLOOKUP+%e5%88%a5%e3%82%b7%e3%83%bc%e3%83%88
お礼
ありがとうございます。 初めて使う関数なので、じっくり取り組んでみます。
お礼
何度もありがとうございます。 たくさんの方にアドバイスをいただきました。 しかも、やったことのないレベルのものばかりで、少々戸惑い気味ですが、もともとエクセルの便利さは貪欲に使い倒したいと思っていたので、挑戦してみます。