ここから本文です

Excel関数について質問です。 シート1(名簿)、シート2(社会保険料率表)を作...

rxt********さん

2016/3/812:41:25

Excel関数について質問です。
シート1(名簿)、シート2(社会保険料率表)を作成しております。
シート1には、A保険番号、B氏名、C標準報酬月額、D保険料率
シート2には、A保険番号、B

氏名、C標準報酬月額で、それDEFG・・・には
個人の細かい保険料率や介護保険料率などがCの値から導き出された結果が表示されるように設定されています。

さて、会社で社員が300名以上おり、転勤や入退社などでシート1の名簿が常に変わります。削除もあれば追加もあります。たちが悪いのは、例えば入社順に1、2、3と番号が付けばよいのですが、以前辞めた社員についていた番号1を新入社員につけなくてはいけなくなることがあります。これは会社の決まりで変えることはできません。
それで、シート2というのは全く同じ形で、社員8名ずつ、それ以降シート3、シート4・・・と続けて表を作成しているわけですが、シート2の社員が一人辞めると、以降300名を地道にずらさなくてはいけません。これが非常に面倒なので、どうにかしたいです。
それで、シート1にある、A列の保険番号が変わると、シート2以降の保険番号が自動的に上から変わるようにできる関数はありませんでしょうか。

シート1のA列の保険番号はA2,A5,A8,A11,・・・・と300名くらい続きます。
シート2のA列の保険番号はA11,A14,A17,A20,A23,A27,A30,A33で、8名分の保険番号、シート3以降も同じレイアウトです。

つまり、簡単に言いますと
シート1のA2に1、A5に2、A8に3の保険番号を持った社員がいました。
A5の社員が辞めました。そしてあらたに4の保険番号をもった社員が入社しました。
シート1のA2に1、A5に3、A8に4となり、シート2もその時点で自動的に変更されてほしいということです。上記の場合は単純な例ですが、ただ辞めて削除するだけということもあります。

お知恵をお貸しください。よろしくお願いします。

閲覧数:
93
回答数:
1

違反報告

ベストアンサーに選ばれた回答

mit********さん

2016/3/814:29:38

そのブックについては一度保存する操作を行ってから再び立ち上げたもので操作をします。
シート2ではお示しのようにA2セルからA5,A8・・のように保険番号があるとします。そこでシート2のA11セルには次の式を入力して右横方向にドラッグコピーしたのちに下方にもドラッグコピーします。

=IF(ROW()>34,"",IF(OFFSET(Sheet1!$A$1,(SUBSTITUTE(RIGHT(CELL("filename",$A1),LEN(CELL("filename",$A1))-FIND("]",CELL("filename",$A1))),"Sheet","")-2)*24 +ROW(A1),COLUMN(A1)-1)="","",OFFSET(Sheet1!$A$1,(SUBSTITUTE(RIGHT(CELL("filename",$A1),LEN(CELL("filename",$A1))-FIND("]",CELL("filename",$A1))),"Sheet","")-2)*24 +ROW(A1),COLUMN(A1)-1)))

このシート2を全体を選択してコピーしシート3、シー4、シート5・・・に貼り付け操作をすればよいでしょう。
シート1である人がいなくなったらその人の行を3行選択して削除すればシート2以降の表も連動して変化し繰り上がって表示されます。

質問した人からのコメント

2016/3/8 19:01:20

素晴らしいです!願っている通りにできました!ありがとうございます!

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる