![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
質問させていただきます。
エクセル2007にて名簿を作成しています。
シート1には氏名順で、それぞれ事業所、住所、電話番号が記載されています。
シート2以降には他に名簿に記載しなければいけない事項が記載してあり、
シート12に、A列には事業所順に、B列にはその事業所が記載されているページ数を入力して索引を作ろうと思っています。(事業所順は既に作成済みです)
シート12のB列にページ数を抽出する良い方法はないでしょうか。
シート1を一度印刷し、自分でめくりながら調べるつもりでしたが
事業所が300近くあるので簡単にできれば・・・
関数使用でもマクロ使用でもかまいません。
尚、1事業所に複数の人物がいる場合もありますが、
その場合はページ番号が若い人のページ数一つを拾ってもらえればかまいません。
似たような質問は他にもありましたが、どれも自分が求めているものとは違うようなので質問させていただきました。
よろしくお願いします。
No.6ベストアンサー
- 回答日時:
回答番号:ANo.5です。
>]1人につき、2行を使用しデータを入力しています。
>1行目に事業所名、2行目に住所を記入してあります。
Sheet1のC列の2行目以下には、途中に事業所名と住所以外のデータが入力されているセルや、空欄は存在しないのでしょうか?
つまり、Sheet1を印刷する際に、行のタイトルを指定して、1行目を繰り返しページの先頭に印刷する様にしているため、途中(2行目以下)に項目名を入力した行が現れる事や、空欄の行が現れる事は全く無いのでしょうか?
もし、Sheet1のC列の2行目以下には、途中に事業所名と住所しか無い場合には、Sheet12のB2セルに次の数式を入力してから、Sheet12のB2セルをコピーして、Sheet12のB3以下に貼り付けると良いと思います。
=IF(COUNTIF(Sheet1!$C:$C,$A2)=0,"",ROUNDUP(MATCH($A2,Sheet1!$C:$C,0)/20,0))
尚、今回はたまたま事業所のデータが始まっている行の行番号が、1人分のデータに使用する行数である2行以内になっているため、上記の様な数式で済ます事が出来ましたが、一般的には、データが任意の行番号であるm行目から始まっていて、1人分のデータが任意の行数であるn行あり、1ページには任意の人数であるo人のデータを印刷する場合には、次の様な数式になります。
=IF(COUNTIF(Sheet1!$C:$C,$A2)=0,"",ROUNDUP((MATCH($A2,Sheet1!$C:$C,0)-(m-1))/(n*o),0))
ご返事が大変遅くなってしまったことをお詫びします。
1行目を印刷タイトルに指定していますが、教えて頂いた通りの数式で見事やりたかった通りのことができました。
念のためですが、自分でページをめくって確認してみたところ、完璧でした。ありがとうございます。
質問段階で不足している点が多々とあり、大変ご迷惑をおかけしてしまい、申し訳ありませんでした。
No.5
- 回答日時:
どの列に何のデータが入力されていて、実際の事業所名のデータ(項目名が入力されている行は除く)は何行目から始まっているのか不明なため、以下の様な仮定に基づいた上での方法に関して回答させて頂きます。
(仮定と異なる場合には、どのように異なっているのか、詳細をお知らせ願います)[仮定1]Sheet1のB列に事業所名が入力されている。
[仮定2]Sheet2のA列に事業所名が入力されている
[仮定3]Sheet1のB列において、実際の事業所名のデータは2行目から始まっている
[仮定4]Sheet1のB列の2行目以下には、途中に事業所名以外のデータが入力されているセルや、空欄は存在しない
[仮定5]1人あたりのデータを記述するために使用している行数は、1行のみである。
以上の仮定が正しい場合には、Sheet2のB2セルに次の数式を入力してから、Sheet2のB2セルをコピーして、Sheet2のB3以下に(A列に事業所名が入力されている全ての行に)貼り付けると良いと思います。
=IF(COUNTIF(Sheet1!$B:$B,$A2)=0,"",ROUNDUP((MATCH($A2,Sheet1!$B:$B,0)-1)/10,0))
この回答への補足
ご返事が遅くなってしまい、申し訳ありません。
続けて、こちらの説明が足りなかったこともあわせて補足させていただきます。
[仮定1]厳密にはC列でした。
[仮定2]Sheet2ではなくSheet12です。(シート名を変更しているのでその部分はこちらで修正させていただきます。)
[仮定3]その通りです。
[仮定5]1人につき、2行を使用しデータを入力しています。
1行目に事業所名、2行目に住所を記入してあります。従って[仮定4]につきましても、C列に事業所名以外のデータが入力されているセルは存在しています。
(電話番号や、仕事内容についても記載する必要があり、印刷する関係上1行に収まらず、2行になってしまっています。)
質問する時に、これらの情報は記載しておくべきだったと反省しております。
No.4
- 回答日時:
よくわからないので、仮定だらけですが…
・事業所名はシート1のB列に記載されている。
・ページ数とはシート1の1~10行が1ページ、11~20が2ページ…
・シート1の記載内容は1行目から開始している
・同じ事業所がある場合は若いページ番号を参照
であれば、シート12のB1セルに
=INT((MATCH(A1,Sheet1!B:B,0)-1)/10)+1
を入れて、下にコピーフィル。(Sheet1はシート1の名前)
みたいな方法で可能だと思います。
(仮定がいっぱいなので、後はアレンジしてください)
この回答への補足
説明不足で申し訳ありません。
もっと単純に、印刷される場合の予測ページ数を抽出する方法があればいいな、と軽い気持ちで質問してしまいました。
一人につき2行を使用し、事業所名はその1行目に記入しておりまして(こちらも詳しく記入しておくべきでした)
1~20行が1ページ、21~40行が2ページとなっています。
それを踏まえた上で、教えていただいた関数をアレンジさせていただこうと思います。
ありがとうございました。
No.3
- 回答日時:
業務のようですので、社内にいる詳しい人に聞いてみてください。
そのほうが確実と思います。
なんか質問を見る限りでは、代わりにやってくれる人を求めているように感じるんです。
もしも代わりにやってくれる人が現れた場合、さも質問者さんが問題を解決したような評価を受けると思います。
すると、次に同じような仕事を任されますよ。そしたらまた他人に頼りますか?
…それって問題の解決ではないと思います。(だって質問者さんが理解して問題を解決したのではないのですからね)
さて、本題
アドバイスとしては
Access 2007 を使いましょう
となります。
改めて自分の文書を読むとそのように受け取られてしまうような発言でした。
うっかり、というべきか読み直してから投稿するべきだったと反省しております。
PC関係に特化していない小さな会社ですので、詳しい方がいないのが現状です。
アクセスに関しては、あまり手をつける機会がなかったので失念しておりました。
その索引以外はエクセルにて作成してしまったので次回からは活用させていただこうと思います。
No.2
- 回答日時:
やりたいことがイマイチ分かりません。
シート1にはたとえば、1行目に鈴木 ○○事業所 住所 電話 2行目に佐藤 ○○事業所 住所 電話 3行目に田中 △△事業所 住所 電話とあるのでしょうか?それが300行あると言う事ですか?事業所のページというのは何でしょうか?シート番号じゃないですよね。その人の書いてある行数の事でもないですよね?
事業所のページと言うのが理解できないのですけど。
たとえばシート3に○○事業所 1ページ △△事業所 1ページ □□事業所 2ページというのがあるのでしょうか?
だとしたらシート1の事業所名からシート3にあるページ数を引いてくると言うのはできますが・・・・
それで良いのか分かりませんし。
この質問ではそれが分かりません。事業所のページというのがどこのことをさしているのか分からないと誰も答えられないと思いますけど。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Visual Basic(VBA) VBAで不特定枚数印刷をしたいです。 4 2022/08/02 07:30
- Excel(エクセル) Excelについて 4 2023/03/02 09:24
- Excel(エクセル) シートが違う2枚のエクセルシートにある数値を別シートにコピーしたい(VBA?) 8 2022/03/31 12:24
- その他(パソコン・スマホ・電化製品) エクセル初心者です。 仕事でエクセルを使っていて、普段は素人でもできる簡単な関数を使ったことがある程 1 2022/05/25 11:17
- Excel(エクセル) 記録マクロのみでできますか? 7 2022/08/07 20:38
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
- Excel(エクセル) エクセルで 同じシートにある2ページに、おなじページをつけたい 3 2022/07/11 16:15
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) エクセルVBA 2 2022/04/27 13:29
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelのVlookup関数の制限について
-
SUMPRODUCTにて別シートのデー...
-
文字の色も参照 VLOOKUP
-
エクセルの保護で、列の表示や...
-
オートフィルタ使用時にCOUNTIF...
-
エクセルのブック分割マクロを...
-
Excel複数シートにあるデータを...
-
Excelでの並べ替えを全シートま...
-
エクセルの列の限界は255列以上...
-
Excel の複数シートの列幅を同...
-
【条件付き書式】countifsで複...
-
エクセルで、チェックボックス...
-
Excel VBA ピボットテーブルに...
-
エクセル マクロ 標準モジュー...
-
エクセルで横並びの複数データ...
-
VBAで繰り返しコピーしながら下...
-
エクセルで複数のシートのピボ...
-
複数行の同列に同じ値があった...
-
auの通話明細から簡単にエクセ...
-
excel2000マクロ記述方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
文字の色も参照 VLOOKUP
-
ExcelのVlookup関数の制限について
-
エクセルの保護で、列の表示や...
-
VBAで繰り返しコピーしながら下...
-
Excel の複数シートの列幅を同...
-
エクセルで横並びの複数データ...
-
エクセルの列の限界は255列以上...
-
【条件付き書式】countifsで複...
-
Excelでの並べ替えを全シートま...
-
SUMPRODUCTにて別シートのデー...
-
エクセル マクロ 標準モジュー...
-
VLOOKアップ関数の結果の...
-
エクセルで、チェックボックス...
-
Excel VBA ピボットテーブルに...
-
オートフィルタ使用時にCOUNTIF...
-
スプレッドシートでindexとIMPO...
-
エクセルVBAで、ある文字を含ん...
-
エクセルのブック分割マクロを...
-
【VBA】複数のシートの指定した...
-
Excel複数シートにあるデータを...
おすすめ情報