[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『別ブックの参照ができない』(TA)
お世話になります。
複数ブック間のセル参照について質問させてください。
【使用するブック】
・ブックA(ユーザーIDを持つトランザクションデータ)
・ブックB(ユーザーID・ユーザー名を持つユーザーマスタ) ※パスワードあり
【やりたいこと】
ユーザーIDをキーに、ブックAにブックBから参照したユーザー名を表示したい。
【事象】
ブックAのユーザー名列に"=VLOOKUP($A1,"と入力し、
続けてブックBに表示を切り替えて範囲を選択しようとすると、
通常であればドラッグ&ドロップで点線で範囲選択をすることができ、
ブックAのユーザー名列に入力した数式は"=VLOOKUP($A1,[Book1]Sheet1!$A$1:$B$10"となると思います。
しかしながら特定のブックにおいてのみ、範囲選択ができません。
できないというのは具体的には、
・点線での範囲選択にならず、黒太線での範囲選択になる
・ブックAのユーザー名列に入力した数式は"=VLOOKUP($A1,"のまま変わらない
という状態です。
また、関数の直接入力ではなく、fx(関数の挿入)ボタンを利用した場合も、
同じく範囲選択が黒太線での範囲選択になり、選択した範囲が「関数の挿入」画面に反映されません。
【試したこと】
・PCを再起動したが同様。
・ブックAを開いたままブックBを閉じて開き直したが同様。
・ブックAから別の任意のブック(ブックC)へのVLOOKUP関数を入力してみた場合は正常に範囲選択できた。
・一時的にブックCを参照するVLOOKUP式を入力し、範囲のパスを手入力でブックBに修正したところ、VLOOKUP式の数だけパスワードを聞かれた。
(VLOOKUP式ごとにブックBを開いている?)
お知恵をお貸しいただけますと幸いです。
どうぞよろしくお願いいたします。
< 使用 Excel:Excel2007、使用 OS:Windows7 >
一応、念のため。 それぞれのブックは一つのExcelで開いているか? (Excelを別々に起動してその別々のExcelで開いていないか?)
状況としては別々のExcelでブックを開いた場合のようにも思えるが別のブックではうまくいっているということだし。 (ねむねむ) 2015/04/30(木) 09:08
選択ができないのはねむねむさんがおっしゃっているように別Excelっぽいけど。
>・一時的にブックCを参照するVLOOKUP式を入力し、範囲のパスを手入力でブックBに修正したところ、VLOOKUP式の数だけパスワードを聞かれた。 > (VLOOKUP式ごとにブックBを開いている?)
これは開くというか、VLOOKUP式ごとにブックBを参照しに行っているんだよ。 パスワードがかかったブックなんだから、参照するにもパスワードがいる。 だからもしもうまく選択できても、ブックAを開くたびにVLOOKUP式の数だけパスワードを入れることになるけど、大丈夫? (リンク無効にすれば入れなくてもいいけど、最新のデータにはならないしなー)
まあ、パスワード保護されたブックの内容をそんな気軽によそから参照はできないってことだろーね。
(1111) 2015/05/01(金) 09:27
■別のExcelでブックを開いた場合のように思えるという点について
ねむねむ様、1111様同様、私もそのように感じました。やはりそういうことなのでしょうか。
実はそのように感じたため、
「ブックAを開いたままブックBを閉じて開き直した」ということも試していたのですが、
状況変わらずでした。
(これまではこの動作で同じExcelで開くことができていたため。)
この点をもう一度確認してみたいと思いますので、
このあたり知識があまりなくて恐縮なのですが、確実に同じExcelで開く方法を教えていただけると嬉しいです。
■参照元がパスワード付ブックの場合VLOOKUP式の数だけパスワードを要求されるという点について
まず、1111様の仰る通り「開く」という表現は不適切でした。失礼しました。
表現を間違えてしまったのですが、このことを質問時にあえて書かせていただいたのは、
通常とは違う動きをした、と思ったからなのです。
申し訳ありませんが、この点についてもう少し教えてください。
私はこれまでパスワード付ブックへのVLOOKUP式を書いたことがありますが、
パスワードの要求はVLOOKUP式の数に関わらず「1回」だけだったように思います。
勘違いだったかな?と思い、1111様からのご指摘をうけて再度手元でテストしてみたのですが、
やはりパスワード要求は「1回」だけでした。
何か設定だとか式の書き方だとかによって違いがあるのでしょうか・・・??
念のため以下に手元でテストした際のブックの内容を転記します。
[ブックa](VLOOKUP式を書いた方)
ID |ユーザー名 |data1 |data2
bbb |=VLOOKUP($A2,[ブックb.xlsx]Sheet1'!$A$2:$B$4,2,FALSE) |・・・ |・・・
ccc |=VLOOKUP($A3,[ブックb.xlsx]Sheet1'!$A$2:$B$4,2,FALSE) |・・・ |・・・
aaa |=VLOOKUP($A4,[ブックb.xlsx]Sheet1'!$A$2:$B$4,2,FALSE) |・・・ |・・・
[ブックb](参照元にした方、パスワードあり)
ID |ユーザー名
aaa |ユーザーA
bbb |ユーザーB
ccc |ユーザーC
ブックbを閉じた状態でブックaを開くと、まずはリンクが無効にされるため、
[リンクの自動更新が無効にされました]という[セキュリティの警告]表示の[オプション]をクリックして、
[このコンテンツを有効にする]を選択しました。
するとブックbのパスワードが「1回」だけ要求され、3行とも最新データが取得されました。
どうぞよろしくお願いいたします。
(TA) 2015/05/01(金) 12:24
>確実に同じExcelで開く方法 これはまずExcelを起動してそのEXCELのOfficeボタン-開くで開けば確実に同じExcelで複数のブックを開くことになる。
>参照元がパスワード付ブックの場合VLOOKUP式の数だけパスワードを要求される これはそのVLOOKUP関数で参照するブックが別々の場合にそれぞれのブック単位で一回ずつパスワードを求められることになる。
当方のブックでパスワードのかかっている複数のブックから複数の値をひっぱて来ているブックがあるがこのブックを開く際には 各ブック一回だけパスワードを入力するだけで済んでいる。 (実際にはメニューブックからそのブックを開き、参照先のブックのパスワードはマクロで入力している)
で、限りなく可能性は低いが、オプションの詳細設定で「Dynamic Data Exchange (DDE) を使用する他のアプリケーションを無視する」に チェックが入っているということはないだろうか?
また、ブックが保存されている場所はどれも同じだろうか?
あと、特定のブックだけということはそのブックに何か不具合があるという可能性もあるのでデータを新規ブックへ移してそのブックを参照するようにしてみるとどうなるだろうか? (ねむねむ) 2015/05/01(金) 13:24
教えていただいた点、確認をとってみます。
都合により確認をとれるがGW明けになりますが(5/7の予定)、
確認後またご報告させていただきますので、
どうぞよろしくお願いいたします。
(TA) 2015/05/01(金) 14:38
色々と教えていただいた点を参考に確認をしたところ、
以下の点がわかりました。
・ブックAを開き[Officeボタン]-[開く]でブックBを開くと、同じExcel上で両ブックが開き、ブックAからブックBの参照が可能。
⇒この方法をとればやりたかったことはできるようになりました。
・ブックAを開いた状態で、ブックBをダブルクリックで開くと、必ず別のExcel上で開いてしまい、ブックAからブックBの参照ができない。
⇒むしろ根本的な問題(異常)はここにあったことがわかりました。
また更にわかったこととして、
ブックAは2003形式(xls)、ブックBは2007形式(xlsx)だったのですが、
2007形式の一部の拡張子(xlsxを含む)のExcelへの関連付けが正しくできていないことがわかりました。
(Excelで開くようにはなっているものの、アイコンと拡張子の説明が異なっています。)
これが両ブックが別のExcel上で開いてしまう原因なのではと思い、
まずはその問題の解決を試みたいと思います。
(Officeの修復や[規定のプログラム]からの再設定では改善しませんでした。
次はOffice再インストール、それでダメならレジストリの編集にトライする予定です。
レジストリは難しそうなので再インストールで直ってくれるといいのですが。。。)
この先は問題の内容が大きく変わってしまいますので、
本質問はこれで終了にさせていただきたいと思います。
ここまで原因の特定を進められたのは本掲示版のおかげです。
色々とご親切に教えていただきどうもありがとうございました。
(TA) 2015/05/08(金) 12:57
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.