プロが教えるわが家の防犯対策術!

別表のC列のデータとフォーマットのA5の支店が一致したら
フォーマットのA5とA6にそれぞれ別表のコードと氏名を表示したいです。

その際、別表のEの数字が455、453、436の順番に表示させたいです。

どのような数式を組めば良いでしょうか?

別表データ画像
https://gyazo.com/e17f186c3d3d56bbf2c30644c0433ad1

抽出先表
https://gyazo.com/2dba21833cd8308f5ec2d7f031c45b24

何卒、ご教授願います。

A 回答 (2件)

> →マクロでも問題はございません。



状況がよく分からないのですが、、、、。
元のデータ
❶ たくさんの人が並んでいて、いろいろのグループの人が混在状態である。
❷ この元のデータの並び順(上から下に並んでいる並び順)は意味がある。

元のデータのあるシートのあるBOOKには、クループ別のシートがある。
グループ別のシートは、セル結合や罫線が設定されている「記入用紙」のようになっている。

グループのシートに、元データのあるシートから、グループが一致する人のコードと氏名を上から順に転記する。

このように考えた場合、例えば、次のようなコードのマクロを、「元のデータのあるシート」をアクティブにして実行すると、転記はしてくれます。

Sub 例()

n = Sheets.Count
re = 200
acn = ActiveSheet.Name
Set ac = ActiveSheet
Set nc = ActiveSheet
For i = 1 To n
tcn = Sheets(i).Name
If tcn <> acn Then
Set nc = Sheets(i)
jj = 3
For j = 2 To re
If ac.Cells(j, 3) = tcn Then
nc.Cells(jj, 1) = ac.Cells(j, 1)
nc.Cells(jj + 1, 1) = ac.Cells(j, 2)
jj = jj + 6
End If
Next
End If
Next

End Sub
「別表データと条件一致したデータを順番に表」の回答画像2
    • good
    • 1
この回答へのお礼

やってみます

こんばんは。

ご教授いただきましてありがとうございます。

解決したいことは、ご提示いただいた内容です。
こちらの説明不足にも関わらず、ご教授いただきありがとうございます。

VBAについてはまだ知識が乏しい為、関数で教えて頂けたらと思って今回質問させて頂きましたが
ご教授頂いたVBAにて検証させて頂きます。

お礼日時:2021/03/31 23:12

> 別表のEの数字が455、453、436の順番に表示させたいです。


「別表データ画像」のE列に表示されているのは、455、453、463です。
「455、453、436の順番」ならば、降順(数値として大きいものから小さいものに並べる)ですが、「455、453、463の順」だと、460や454などがある場合の並べ順が分かりません。
「抽出先表」のA列 氏名コード、氏名は、「455、453、463の順」のようにもみえて、どうしたいのかが、よく分かりません。

画像データで表示されているママで、対象はこの3人のママで固定で増減がなく、番号、コードも変化しないのなら、数式を使わずに、手動でコピーし貼り付けた方が、意図した通りにできると思います。

人数に増減があったり、氏名も、コードもいろいろあるという変化もするのでしたら、数式利用も便利かもしれません。 その場合、抽出先表はどこのbookにあって、sheet名はどうなっているのか、別表のsheet名もあった方がいいです。また、別表は一枚だけで、東京だけでなく他のグループの方も混在しているのか、他のグループの方が混在している場合、どのようにその人達を扱いたいのかも分かるようにするといいです。
画像を見ると、「社員区分の数字3桁&数字123」が「氏名コード」のようにもみえます。
抽出先表に並べる順番というのは、「社員区分の数字の大きい順」=「社員コード順」ではないのですね。

> 別表のC列のデータとフォーマットのA5の支店が一致したら
> フォーマットのA5とA6にそれぞれ別表のコードと氏名を表示したいです
> どのような数式を組めば良いでしょうか?

「Excelの関数式で、表示させたい」のであって、
「マクロなどで、転記する」のではマズイのですね。
    • good
    • 1
この回答へのお礼

ご返信遅くなり申し訳ありません。
また、ご説明不足で申し訳ありません。

「455、453、436の順番」ならば、降順(数値として大きいものから小さいものに並べる)ですが、「455、453、463の順」だと、460や454などがある場合の並べ順が分かりません。
「抽出先表」のA列 氏名コード、氏名は、「455、453、463の順」のようにもみえて、どうしたいのかが、よく分かりません。
→455、453、463しかないので、この順番に並べたいです。

画像データで表示されているママで、対象はこの3人のママで固定で増減がなく、番号、コードも変化しないのなら、数式を使わずに、手動でコピーし貼り付けた方が、意図した通りにできると思います。
→変動あります。

人数に増減があったり、氏名も、コードもいろいろあるという変化もするのでしたら、数式利用も便利かもしれません。 その場合、抽出先表はどこのbookにあって、sheet名はどうなっているのか、別表のsheet名もあった方がいいです。また、別表は一枚だけで、東京だけでなく他のグループの方も混在しているのか、他のグループの方が混在している場合、どのようにその人達を扱いたいのかも分かるようにするといいです。
画像を見ると、「社員区分の数字3桁&数字123」が「氏名コード」のようにもみえます。
抽出先表に並べる順番というのは、「社員区分の数字の大きい順」=「社員コード順」ではないのですね。
→抽出先、元データ共に同じブックにあります。
データは他のグループも混在しており、抽出先シートも東京、仙台、九州等複数ございます。

「マクロなどで、転記する」のではマズイのですね。
→マクロでも問題はございません。

お礼日時:2021/03/30 21:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!