- ベストアンサー
VLOOKUPを使ったリスト表示の問題解決方法
- WindowsXPでExcel2003を使っている際に、VLOOKUPを使ったリスト表示の問題が発生しました。
- リストで取引先コードを入力すると、取引先名が表示されるようにしていたのですが、同じコードを使っている別の部署の名前が表示されません。
- Excelの表上では部署毎に異なる番号を表示したいですが、VLOOKUPを使っているため同じ番号で上の行ばかり表示されてしまいます。どのようにすれば解決できるでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1>[100-1][100-2]...とした場合、並べ替えで最後に来てしまうので…。 それは、重複するコードだけに補番を振ったからですね。 全部のコードに同じように振る必要があります。 手動で振るのは面倒なので、 例えば、A列にA1のセルからコードがあるとして B列に B1 =1 B2 =IF(A1=A2,B1+1,1) 以下下にコピー のようにすると、同じコードに一連番号を振ることができます。 そこで C列に C1 =A1&TEXT(B1,"-00") 以下、下にコピー のようにしてやれば、それぞれ補番が付きます。 (0の数は、重複が予想される桁必要、重複が10個あれば2桁) 一旦作成できれば、範囲を選択してコピー~形式を選択して貼り付け~値で貼り付けして作業列を削除します。
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
同じコードで、ある時はAある時はBのように人間の思う都合の良い方を表示することはできません。 どうしても、コードを振り直すか補番を追加する必要があります。 システム上コードを振り直すことができないということなので、 エクセル上で、元のコード+補番のコードでVLOOKUPできるようにすればいいんじゃないかと思います。 場合によっては、VBAで、コード入力時に、同一コードデータが複数在る場合は、ユーザーに選択させるということもできるかもしれません。
お礼
早速、ありがとうございます。 やっぱりこの条件では無理なんですね…。
補足
VBAはわかりませんので… 教えていただきました保番を付けるやり方でやってみたのですが セルを挿入した場合リストで表示させようとすると『単一のセルまたは行~』となり、 [100-1][100-2]...とした場合、並べ替えで最後に来てしまうので…。 もっといい条件の関数がないか調べてもみたのですが、 ヘルプでみても使い方がよくわからなかったりで結局現状のままです。 保番の付け方でどうにかできるか、もう少しやってみようと思います。
お礼
またも ありがとうございます! 言われてみれば、ちょっと考えればわかりそうなことをしていました…。 しかも、簡単に番号を振る方法まで教えていただいて、本当に助かりました。ありがとうございます。 おかげさまで、やりたかったようにできるようになりなした。