[[20200914171806]] 『クエリに手動で情報を追加したいです』(てんてん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『クエリに手動で情報を追加したいです』(てんてん)

始めまして。てんてんと申します。

状況:
クエリツールを使用してcsvの情報をまとめているのですが、
諸事情によりそのクエリテーブルの横に手動で(数式などではなく)
情報を入力しなければなりません。

今回悩んでいる内容:
情報の入力自体は問題なくできるのですが、
クエリに修正が入った際に横のセルの順番がバラバラになってしまいます。

イメージとしては、
↓のテーブルのうちAとB列がクエリ、C列は手動で入力していると思ってください。
  A  B  C
1 aaa 111 Aさん
2 bbb 111 Bさん
3 ccc 222
4 ddd 333
5 eee 333 -

これに対してクエリの更新が入ると
  A  B  C
1 aaa 111 
2 bbb 111 -
3 ccc 222 Aさん
4 eee 333 Bさん

のようにC列がバラバラになってしまう状況となります。

希望の動作の順位としては
1)元々の行に連動してC列が動いてくれる
2)C列は元の行数のままで、データの順番は変わらない
となります。

クエリの仕様でどうしようもないのであればテーブルを分けて対応いたしますので
その際も教えていただけますと幸いです。
よろしくお願いいたします。

< 使用 Excel:Excel2016、使用 OS:Windows10 >


実際には2列だけではないのでしょうけど、手入力した分はCSVファイルとは無関係なので、順番無視されちゃいますね。

対策としては、例えばA列とB列の組み合わせで1行が特定できるのであれば、A,B,C列で構成された別シートを用意する事です。 そして、CSVをシートに取り込んだ後、数式を利用し、A,B列の情報から別シートを参照し、手入力したC列の情報を表示させましょう。
(???) 2020/09/14(月) 17:58


???様
ご返答ありがとうございます。

やはり順番は無視されてしまうのですね。
今行っている作業が、イメージ的にはA,B列に入力されている書類の中身を確認して
C列に追記していく…という内容なので、別シートを事前に用意はできない状況です。

今までもクエリに更新をかける前には、その時点での状態を別シートにコピー⇒更新後にlookup等でC列のデータと紐づけていましたが
うっかりクエリの更新を行ってしまうことがあり、どうにかできないものかと思案した次第です。

今後も上記の対応でしのぎたいと思います。ありがとうございました。
(てんてん) 2020/09/14(月) 18:07


手入力追加したものが正、という事であれば、マクロを使ってはどうですか?

・まず、直接更新するのではなく、別のシートにcsvデータを取り込む。
・マクロで1行ずつ、正のシート上に同じ項目があるか探す。
・同じ項目があれば、その行に上書き。
・同じ項目が無ければ、行末に1行追加。

これなら、データのある行がずれないので、手入力がそのまま有効です。
(???) 2020/09/15(火) 09:26


???様

すみません、そのマクロの動作タイミングがくみ取れなかったのですが
イベント関数などで(上記例でいえば)C列に追記された時に自動で別シートを更新するイメージでしょうか?

複数のクエリを接続のみ作成してマージしたものに
徐々に追記していっている状態(作業中で、C列はこれからどんどん記載していくイメージです)のため
一致したら…というのはなかなか難しいものがあるのです。

追記途中にクエリを更新するな、という話かもしれませんが
ゴミデータが多いと作業効率も悪いため随時フィルターをかけたい瞬間がありまして…

状況伝わり辛かったら申し訳ありません。
(てんてん) 2020/09/15(火) 10:06


C列に入力するタイミングではなく、全く逆で、ボタンでも押すと、別のシートにCSV取込後、今のシートを更新していくのです。 C列だけは更新されず、入力したままになります。(同じ項目があれば、値だけ上書き)

上書きまたは追加の際、前回と値が違っていたら、太字強調とか色塗りとかで強調表示、なんて事も可能ですよ。
(???) 2020/09/15(火) 17:07


???様

お返事遅くなり申し訳ございません。

なるほど…イメージは沸きました。

 現シート⇒別シート
 クエリ⇒現シート
かと思っていましたが

 クエリ⇒別シート
 別シート⇒現シート
ですかね。

この場合、現シートvsクエリで
現シート側のみのは削除、クエリのみは追加となりますかね。

その後にC列vsAB列で…と思っていましたが、行自体を追加/削除さえできれば
私が求めている要件は満たせているので問題なさそうです。

今回行っていた作業は完結してしまいましたが、同様の作業を行うことが多いため
今後同作業の際には参考にさせていただきます。
ありがとうございました。
(てんてん) 2020/09/29(火) 11:56


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.