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

しばらく考えているのですが、分かりません。
詳しい方教えてください。

★年に4回ある決算期のどこで、誰に、何について、いくら支払が発生するかを纏めた表を作ります。
 参照しているデータの大元となるエクセルブックがあります。
 そこからなんやかんやと引っ張ったりして、上記の表を作成します。
 具体的には、台帳から外注さんへの年間支払予定の情報を抜きたいのですが
 大元となる台帳は種類ごとに分かれていて、全部で年間4ブック、
 中のシート(受注した業務)はそれぞれ30件くらい、
 外注さんはあったりなかったり、1社だけだったり複数社あったりします。
 業務によってお願いする外注さんは異なりますが、取引のある企業はだいたい決まっていて、20社程        度の企業を業務の内容によって振り分け、お願いしています。

条件としては
①ダイレクトに引っ張れなくても、作業セルはあってOK(シートAにします)。
②最終的に完成する表(シートBとします)は、縦軸:業務、横軸:月/年 で振り分けられるよう条件設定します。
③シートBでは、ひとつの業務につき必ず1行使うとは限りません。
 ひとつの業務につき外注さんが複数社あった場合は、その分 行数も増えますが、
 その年度に外注さんを使わない業務は、その年の表には必要ありません。
④外注さん1社につき、年間で支払が2回以上あった場合は横1行で、月で分けて表示します。
⑥今年度に業務を受注し、今年度に外注さんへ発注した業務であっても支払が来期だった場合はそれも抽出します。(※作成した大元となる台帳自体が年度ごとに分かれているため、支払が来期になる可能性を前提とした条件を付けていなかった)

シートB
例)      4__5__6__7__8__9__10__11__12__1__2__3__計_____来期
No.1 佐藤商店   \10                    \10
No.5 山田商店        \50       \50    \100
    田中商店          \50           \50
No.9 木村商店                             ¥10


初めに作成した大元となる台帳や、それに紐づく他の資料は、関連性を見ながら1から作ったので、組み立て自体はあまり悩まず、使用する計算式は調べながら作成したのですが、今回の表は後出しな上に条件が複雑で、私の頭では難しくて思考停止しています。
エクセル中級程度、マクロは組めません。関数でなんとかしようとしています。
どうやら社内でエクセルの使い手はほぼ皆無でした。若手数名に相談してみましたが、みんな△で、○には至らず...

まずはひとつの業務につき 縦軸:外注先20社、横軸:月/年の表を作成し、データのある列をまるごと抽出しようとしましたが、うまくできず
仮に成功しても、ひとつの業務につき余白含め縦軸23行程度×年間30件が4種類では、なかなか大がかりな作業セルになるなぁというのと、
業務によって2行だったり3行だったり、0行だったりの条件設定ができませんでした。

どなたか良いアイデアをいただけると嬉しいです。
よろしくお願い致します。

質問者からの補足コメント

  • 【大ファイルa内 小ファイルb内 ブックが6あるうちのシート3から6全てがそれぞれリンク元となっていて、シート3から5はタブが30程度,シート6はタブが15程度あります。
    この30や15というのは受注した件数です。それぞれのタブ内M33からAC38までのデータ】を別のエクセルファイルへ飛ばします。これは受注の条件ですが、発注の条件は本文を見てください。
    完成イメージは本文内のシートBですが、この情報量のなかから、シートB程度の情報を抽出し、それぞれの受発注条件によって表示される列の数が変わったり、1列のなかに複数セルへ表示させられるか分かりません。
    ①リンク元から全てを集約した表を作り、②そこから該当する列を抽出するところまでは問題ないと思いますが、その先の組み立て方が分かりません。
    まず②該当列の抽出はどのような式になりますか?C-FにデータがあればJ-QにA-Hを抽出です

      補足日時:2022/02/10 15:10

A 回答 (5件)

>どなたか良いアイデアをいただけると嬉しいです。


業者に作成委託するのがベストでしょう。
    • good
    • 0

えっと、長いですが業務の紹介と感想だけしか書かれてないように思います。


枝葉末節(なんやかんやとか人に頼んだけどとか、ホントいりません)は省いて、

元の表(行列番号入り)
希望する完成表(行列番号入り)
やってみたことの「詳細」
できなかった時の結果(うまくいきませんとかではなくどうなったかの詳細)

など、他人が再現できるデータを出してもらわないとどうにもならないです。ご自身は白紙の状態で客観的に質問文を読んで状況が理解できますか?
    • good
    • 1

こんにちは



他の方の指摘にもありますが、抽象的な表現と不要な情報(←ミスディレクションになるので有害なだけ)が混在している状態なので、肝心の内容はさっぱりわかりません。

まずは、なさりたいことを整理しましょう。
その上で、どのような手順で行うのが良いのかをよく考えましょう。
(この時点では、エクセルの関数等はあまり関係はありません)
同じような手順でも、要領の良い手順と悪い手順があるでしょうから、要領よくかつ論理的な方法を考えます。
「そんなの百も承知だよ」とおっしゃるかもしれませんけれど、ご質問文を読んでも到底そうは感じられないのが実際です。

手順を考えたら、「ご自身でできる部分」と「できない部分」を切り分けましょう。
その上で、できない部分について論理的にご質問なされば、現状のようなご質問文にはならないものと想像します。
大変失礼ながら、現在のご質問文は「(わからないデータ)から、(わからないもの)を作成したい。アイデア下さい。」といった印象です。(しかも丸投げ状態)
仮に、アイデアを出してくださる方がいたとしても、それを実際に当てはめて作成することが質問者様にできるのかどうかも不明です。

>条件が複雑で、私の頭では難しくて思考停止しています。
一気に全部の条件をこなそうとせずに、条件を分解して、順次データを処理してゆくような手順をとれば、(多少手間はかかるかもしれませんが)解決できるのではないでしょうか?
(条件自体が不明なので、何ともわかりかねますけれど・・)


・・などと言っているだけでは回答にもならないので、手始めになりそうな部分について。

実態がさっぱりわかりませんけれど、複数のブックをそのまま関数で扱うのは相当に面倒なので、直接求めることは難しいでしょうから、(多分)何らかの形でシートに統合することになろうかと想像します。
例えば、「複数シートを統合する」といった内容に限れば、検索すれば、沢山の情報がみつかります。
(なさりたいことを適切に分解して検索すれば、自力で解決も可能ではないかと想像します)
以下は、「統合」に関する方法のごく一例です。
(方法は他にもいろいろありますので、実態に適した方法をとるのが宜しいかと)
https://allabout.co.jp/gm/gc/297752/
    • good
    • 2

No3です。



意味が伝わっていないのか、無視なさっているのか不明ですけれど、No2様がご指摘のように「文章で相手に伝わる」ようにしない限りきちんとした回答は得られないと思います。

>シート3から5はタブが30程度,シート6はタブが15程度あります。
ブックにはシートのタブが存在しますが、シートには普通はタブは無いものと思います。
何か特殊なことをなさっているのなら、それを説明しない限り(質問者様には当たり前のことでも)回答者には状況が理解できません。


>②該当列の抽出はどのような式になりますか?C-FにデータがあればJ-QにA-Hを抽出です
こちらも内容がよくわかりませんけれど、不明点は以下のように勝手に解釈しました。
 ・データは1行で(A:H列)1セットとなっている
 ・データの行数は不定
 ・「データがあれば」とは空白セル以外は「データがある」と見做してよい
 ・「C-Fにデータがあれば」とは「C列からF列の間に
    一つでも空白ではないセルがあれば」の意味とする
 ・「抽出」とは該当するデータセットのみを上に詰めて表示すると解釈

多少面倒なのは「抽出」でしょうけれど、検索すればいろいろな方法が紹介されています。
 ・エクセルのフィルター機能(やフィルターオプション)を利用する方法
 ・作業列を利用して抽出する方法
 ・関数で直接抽出する方法
などなどであろうかと思います。

簡単な一例として、添付図ではJ1セルに
 =FILTER(A:H,(C:C="")+(D:D="")+(E:E="")+(F:F="")<4,"")&""
を入力してあります。
入力すると、図のように抽出結果全体がJ:Q列に表示されます。
(ご質問文には記載がありませんが、FILTER関数を使える環境と想定しました)


※ 勝手に解釈しましたので、お求めの内容とは違うとは想像しますけれど、方法としては応用できるのではないかと考えます。
多分、ご質問の文章から回答できるのはこの程度であろうかと思います。
※ 内容を整理することや条件を整理して伝えることには、どうやら関心はなさそうなご様子なので、あとはお好みに合わせてご自由にどうぞ。
「エクセル 関数について教えてください」の回答画像4
    • good
    • 0

タブって、テーブル(の中の件数)のことかな…

    • good
    • 0

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