• ベストアンサー

エクセルの表を利用して印刷物を作りたいのですが・・・

こんにちは。OSはWindows meで、エクセルの2000を使っています。 例えばですが、エクセルのシート1に ナンバーとその他項目を表形式で入力して、 シート2上でシート1でのナンバーを入れると、 それに対応する項目がシート2の所定のセルに 出力されるなんていうことはできるでしょうか? できれば、シート1でのナンバーをプルダウンみたいな感じで 選択できるといいなと思うんですが、そういうことができるなら 方法を教えていただけると嬉しいです。 エクセル初心者なので、わかりやすく教えていただけたら幸いです。 よろしくおねがいします。

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

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

ちょっと希望が掴めないところあり。 ●下記をやって見て、不満な点や改良点でも入れてください。ベストとは決して思いません。 他の解答者の方もそれの改良に答えてくれるでしょう。 本件は質問者の希望を固める呼び水と思ってください。 ●Sheet1のA1からC5まで下記データを入れる。 A列  B列  C列 1 青木 盆栽に詳しい。横浜在住。旧軍隊経験者。孫        13人。 3 伊藤 身長180センチ。郷里は鹿児島。長らく官        庁勤め。 5 新宅 音楽クラシックが趣味。印刷技術者。 6 黒岩 奥さんに先立たれ、一人身。山登りに今も月        1回最低は行く。 7 星野 学者。今も講演で全国を回る。 番号は番号順に並べておくこと。(入力後並べ替えが出来るのは、ご存知の通り。) ●Sheet2 A1セルを番号を入れる場所に決める。 D3に情報を出す場所にする。 ●Sheet2のD3セルに関数式=VLOOKUP(A1,Sheet1!$A$1:$C$5,3,TRUE)と入れる。 D2セルに関数式=VLOOKUP(A1,Sheet1!$A$1:$C$5,2,TRUE)と入れる。 ●Sheet2のA1セルに番号を入れると、 D3セルに情報、D2に名前が出る。例えば「5」と入れると 新宅 音楽クラシックが趣味。印刷技術者。と出る ---- 更に改良すれば下記の通り、「プルダウンみたいな感じで 選択できる」ようになりますが、下記操作が文章では未経験者に伝わりにくいようなので。でもやって見てください。 コンボボックスを使う。 Sheet2を開く。表示-ツールバー-VisualBasic-スパナと金槌X型アイコンクリック。 出てくるツールバーアイコンの中のコンボボックスをクリック。 +印をセルA2からB2の辺りに持って来て右下方向へマウスをドルッグする。小さい四角が4つ以上見えるようになるから その中でダブルクリックする。プロパティウィンドウが出る。 LinkedcellをSheet2!A1に、ListFillRangeを Sheet1!A1:B6と入れる。右上×で閉じる。 三角定規と鉛筆のマークをクリック。(凹みをなくす。) これで▼をクリックすると番号と氏名が出てくる。 望みの人を選択してクリックすると、情報が出てくる。 D2とD3の式は下記に変更すること。 =VLOOKUP(VALUE(A1),Sheet1!$A$1:$C$5,2,TRUE) =VLOOKUP(VALUE(A1),Sheet1!$A$1:$C$5,3,TRUE)

puruq75
質問者

お礼

要領の悪い質問にもかかわらず、ご回答いただきありがとうございました。 さっそく試してみたのですが、前半部分はこれで完璧でした。 ただ、後半部分、なぜか▼をクリックしても番号しか出てきません。 何がいけなかったんでしょうか? 教えていただけたら幸いです。

puruq75
質問者

補足

すみません、補足です。 作りたいものは、番号、氏名、情報を記入したカードのようなものです。 番号を選んで、必要な人の情報をピックアップして印刷することはこれで可能だと思うんですが、1番から最後の人までのカードをマクロかなんかを使って連続出力することは可能でしょうか? よろしかったら教えてください。お願いします。

その他の回答 (4)

  • suzusan7
  • ベストアンサー率64% (22/34)
回答No.5

横レスみたいになって申し訳ないですが、レスがつかないようなので一言。 マクロはエクセルで ALT+F11 で起動するものを使用します。 ワークシートに関数のように書くものではありません。 自動印刷はそこで書いたプログラムのようなものを動かすことになります。 そこに繰り返しの命令を書くと、指定した回数だけ印刷眼命令をくり返すことになります。 では、そこに何を書けばよいかというと、 それはコード(プログラムのようなもの)です。 それがどんな風に書けばよいかというのを載せるにしても 実際のモデルと合うかどうか、またpuruq75さんの方で 修正ができなければ完成はしないということですね。

puruq75
質問者

お礼

アドバイスをありがとうございます。お返事が遅れてしまいすみませんでした。 実際のモデルに合うかどうか、ということですが、 実際したいことというのがだいたい以下のようなことです。 1.Sheet1のA列に番号、B列に氏名、C列に1もしくは2が記載された表がある 2.Sheet2は、番号を選択して印刷をするシートとして利用。(これはできました) 3.Sheet3を連続印刷用のシートにして、セルA1に番号、A2に氏名、B1にSheet1のC列の1もしくは2が出力されるようにする。 4.Sheet3のA3、A4にそれぞれ以下の式を入れておき、A3かA4に○を出力させる A3:=IF(B1=1,”○”,” ”) A4:=IF(B1=2,”○”,” ”) 5.印刷範囲をA1-A4に指定して、Sheet1の表の人数分だけ印刷する(改ページを利用してB1セルの数字が出ないようにしようと思っています) こういうことは可能でしょうか。 可能でしたらどのようのコードをどこに書けばいいのでしょうか? よろしかったら教えていただけませんでしょうか。

puruq75
質問者

補足

ご回答いただきました皆様、どうもありがとうございました。 そろそろ回答を締め切りたいと思います。 思うようなことが100%はできなかったのですが、 けっこうできるようになり、作業が楽になりましたし、 また、私自身大変勉強になりました。 本当にありがとうございました。

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

#1の補足に対する、解答(アドバイス?)。 Sheet1のA列に番号、B列に氏名、C列に文章的情報が入って いるとします。Sheet3を印刷用メモに使います。Sheet1からSheet3へ内容・情報を適当な形に移し、Sheet3を印刷します。処理の流れは (1)Sheet3に見だし(D1に)、罫線、書式等を設定する(不動部分)。 (2)Sheet1の第1行目に注目する。 (3)Sheet3のA2にSheet1のA列から持ってきて番号をセットする。 (4)Sheet3のA3にSheet1のB列から持ってきて氏名をセットする (5)第4行は空白行とする。(体裁を整えるだけ) (6)Sheet3のA5より下行に情報文章をセットする。    勿論Sheet1のC列より持ってくる。    文章は1行15文字とし、それを越えると次行に折り返   す。 (7)Shhet3を(シート)自動印刷する。 (8)次にSheet1の第2行目に注目する。 (9)(3)から(7)を繰り返す。 (10)sheet1の入力行が終われば終了する。 前もってSheet1を氏名順とかに並べておくと、その順序に印刷物が出てくる。 さて希望が出ればコーディングを載せても良いが、上記モデル と現実の問題がかけ離れていると、自力修正が出来ず、完成 しないかも知れないわけです。その点少し無理があるかと心配です。 それと「カード」は印刷された枠のある用紙に打つのか、白紙 に罫線をパソコンで引いたもので良いのでしょうか。

puruq75
質問者

補足

ご回答ありがとうございます。 早速パソコンの前に向かってみたのですが、 当方初心者ゆえ、具体的にどうしていいか わからなくなってしまいました。 具体的には、 (1)情報のセットのしかたは”=”でいいのか、    何か関数を用いたほうがいいのか? (2)Sheet3の自動印刷のしかた    (自動印刷=印刷アイコンを押すということでいいんですか?) (3)繰り返し、の命令のだしかた。 (4)コーディングって何ですか?(すみません・・・) ちなみに、カードは印刷のあるものに出力します。 この件に関しては、セルの大きさと入力位置で 何とかクリアできそうです。

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

#1の者です。お礼部分の >さっそく試してみたのですが、前半部分はこれで完璧でした。ただ、後半部分、なぜか▼をクリックしても番号しか出てきません。-->リストボックスのデザインモードの状態で (1)リストボックスの幅を十分大きく広げること。 (2)リストボックスのプロパティのColumnCountを「2」 に変えてください。 すると番号と氏名がリストボックスに現われると思います。

puruq75
質問者

お礼

さっそくのご回答ありがとうございました。 たびたびのご足労申し訳ないです。 今度会社でさっそく試してみます。 また結果等は補足にて報告させてもらいますね。 本当にありがとうございます。

puruq75
質問者

補足

ありがとうございます! 選択肢に名前も出てくるようになりました! ただ、番号と名前の間にものすごく間があいているんですが これは何とかならないでしょうか? ささいなことでどうでもいいようなことですが、 できるようでしたら教えてください。 よろしくお願いします。

  • suzusan7
  • ベストアンサー率64% (22/34)
回答No.2

はじめまして。 お盆のせいか、レスが入ってないので、一言。 コンボボックスに番号と名前の両方が表示されるという 意味ではないのではないでしょうか。 コンボボックスに両方表示されてしまうと、 VLOOKUP関数がエラーを起こすことになると思います。 番号がプルダウンで得られたならそれで良いのではないでしょうか。 補足の連続出力については、繰返しによりマクロで可能です。 ただし、自動マクロでは作成できないと思いますので、 VBAで作成することになると思います。

puruq75
質問者

お礼

さっそくの回答ありがとうございます。 そして、連続出力はVBAで作成ということですが、 具体的にはどうすればいいのでしょうか。 また教えていただけたら幸いです。 ありがとうございました。

関連するQ&A

専門家に質問してみよう