[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ドロップダウンを別のシートで連動させたい』(しずく)
いつもお世話さまです。
しート1に合計請求書の表紙があります。 ここにドロップダウンを作成して、宛先を変更できるようにしました。
シート2は内訳明細書で、それぞれ品名と単価の列があります。 この品名もドロップダウンで表示させたいです。 ただし、品名は宛先ごとに違うので、別のシート3に○○商事品名リストを 作成しています。
シート1の宛先を変更したら、シート2の品名のドロップダウンも それに連動させて変更することができますでしょうか?
8社顧客があるので、会社によって品名のよびかたが違うので.....
わかりにくくてすみません。。。よろしくお願いします。 ちなみにエクセル2007です。
1.Sheet3のB1セルから右に8商社の名前を書き、 その下に商品リストが作ってあるものとします。
2.Sheet1の宛先はA1セルに入力されるものとします。
3.Sheet2の品名の入力規則に以下の設定をしてください。
(1)入力の種類 → リスト
(2)元の値ボックスに ↓ =OFFSET(Sheet3!$A$1,1,MATCH(Sheet1!$A$1,Sheet3!$B$1:$I$1,0),COUNTA(OFFSET(Sheet3!$A$1,1,MATCH(Sheet1!$A$1,Sheet3!$B$1:$I$1,0),150)))
<Sheet1> <Sheet2>
行 ____A____ _B_ 行 _A_ _B_ __C__ __D__
1 長友商事 1 品名 単価
2 2 長商2
3 長商4
<Sheet3> 行 _A_ ___ B ___ ___ C ___ __D__ __E__ __F__ __G__ __H__ __I__ 1 本田商事 長友商事 ○商3 ○商4 ○商5 ○商6 ○商7 ○商8 2 本商1 長商1 ○商1 商4品 商5品 商6品 商7品 商8品 3 本商2 長商2 ○商2 4 本商3 長商3 5 長商4 6 長商5
(半平太) 2013/03/26(Tue) 22:57
半平太様
今作成中なのですが、元の値ボックスには直接OFFSET関数を入力しないといけないですか? 上記の数式をコピペして貼りつけているのですが、 「条件データの入力規則に他のワークシートまたは、ブックへの参照は使用できません」 となってしまいます....
しずく
>「条件データの入力規則に他のワークシートまたは、ブックへの参照は使用できません」
すみません。当方、XL2010 でやっていました。 m(__)m
以下、XL2007の方法です。
1.Sheet3のB1セルから右に8商社の名前を書き、その下に商品リストが作ってあるものとします。 (ここは前回と同じです)
2-1 Sheet1の宛先セルのクリックしして、名前ボックスに「宛先」と入力してください。(数式バーの左端にあるセルアドレスが表示される処です) これで宛先セルは、「宛先」と云う名前定義がされたことになります。
※この処置で、前回の制約「A1セルに宛先を入れる」は無くなります。(宛先は何処のセルでもOKです。但し一個所のみ))
2−2 Sheet3のA1:I1を一括選択して、名前ボックスに「BASE」と入力してください。 これで当該範囲(9セル)は、「BASE」と云う名前定義がされたことになります。
※余談ですが、「BASE」は宛先セルの入力規則用として再利用出来ます。
3.Sheet2の品名の入力規則に以下の設定をしてください。 (1)入力の種類 → リスト (2)元の値ボックスに↓ =OFFSET(BASE,1,MATCH(宛先,BASE,0)-1,COUNTA(OFFSET(BASE,1,MATCH(宛先,BASE,0)-1,150,1)),1)
(半平太) 2013/03/27(Wed) 11:40
半平太さん!!!!! できました!!! すごいです(*^_^*)♪♪ ほんとにどうもありがとうございます!!!! うれしいです!!
しずく
すみません... ここに続きを書いていいのかわかりませんが、 Sheet3の8商社の名前と品名リストですが、そこには
<Sheet3> 行 _A ___ B ___ __ C __ __D__ __E__ __F__ __G__ __H__ __I__ 1 本田商事 長友商事 山田商事 2 本商1 2500 個 長商1 3000 式 山商1 3 本商2 3000 式 長商2 500 本 山商2 4 本商3 500 個 長商3 400 個 山商3 5 本商4 2000 本 長商4 1000 個 山商4 6 長商5
<Sheet2> 行 _A ___ B ___ __ C __ __D__ __E__ __F__ __G__ __H__ __I__ 1 品名 数量 単価 金額 2 本商4 2 本 2000 4000
Sheet2のD列とE列にB列で商品名を選んだ時点で、Sheet3で作成したBASEのデータを抽出したいです。 今までは、8社別々に請求書をそれぞれに作っていたのでSheet3のリストが1社しかなく VLOOKUPででるようにしていました。 たびたび申し訳ありませんが教えてください。 すみません・・・・
C列はそのつど入力で、F列は単純にC*Fの計算式を入れています
1.Ctrlキーを押しながら、F3キーを押して「名前定義」ダイアログを出し、 BASEの参照範囲を広げてください。
=Sheet3!$A$1:$I$1 → =Sheet3!$A$1:$Y$1 (つまり右端をY列へ変更する)
2.次に、単位・単価の数式を以下の様にしてください。
(1) D2セル =IF(B2="","",VLOOKUP(B2,OFFSET(BASE,1,MATCH(宛先,BASE,0)-1,150,3),3,FALSE)) (2) E2セル =IF(B2="","",VLOOKUP(B2,OFFSET(BASE,1,MATCH(宛先,BASE,0)-1,150,2),2,FALSE))
それぞれ下にフィルコピー
<Sheet2>結果図
行 __B__ __C__ _D_ __E__ __F__ 1 品名 数量 単価 金額 2 本商1 個 2,500 3 本商4 本 2,000
(半平太) 2013/03/27(Wed) 13:43
半平太さん できました!! ほんとにほんとにほんとにありがとうございました(*^_^*)
しずく
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.