エクセルで、
例で
都道府県 果物 価格
A県 りんご 100
バナナ 200
なし 300
B県 りんご 150
バナナ 250
すいか 350
C県 りんご 125
バナナ 225
すいか 325
このようなのが、県別で10個分
あるのですが、
別シートでも、同じシートでも、いいのですが、
県名と果物はプルダウンで、
入力すると価格がポンとでるようにしたいのですが、
果物が、同じものがあるので、
プルダウンで連動しようと果物だけでひとくくりして
名前の定義をすると思うと、今度vlookupで、
果物と価格が連動できずになるので、
どなたか、お知恵をお貸しください。
宜しくお願い致します。
No.4
- 回答日時:
図を例にします。
A1とB1セルがプルダウンメニュー、C1セルが結果表示になります。
設定方法は以下のとおり
A1セル
データの入力規則→設定→入力値の種類にリストを選択
元の値 =$A$4:$A$6
B1セル
データの入力規則→設定→入力値の種類にリストを選択
元の値 =OFFSET(C4,2,(MATCH(A1,A4:A6,0)-1)*2,4,1)
C1セル
=IFERROR(VLOOKUP(B1,OFFSET(C4,2,(MATCH(A1,A4:A6,0)-1)*2,4,2),2,FALSE),"")
B1セルとC1セルで使用しているOFFSET関数の後ろから2番目の"4"部分には
果物の数が最も多い県の果物の数をいれて下さい。
県を増やす場合は
A列の表を下に追加、A1セル、B1セル、C1セルの範囲設定変更
C4セルの表を横に追加、OFFSET関数の後ろから2番目の数を前述のとおり変更
県の順番は両方の表で一致させてください。
ありがとうございます。元の値にoffset関数を使うのですね。
理屈がわかれば、こちらの方がいいかもしれません。
ミソ的な部分を含めて、自分でやってみます。
No.3
- 回答日時:
こんばんは!
VBAと入力規則の併用ではどうでしょうか?
一例です。
↓の画像のようにSheet2に対応表を作成しておきます。
そして、Sheet1のA列は入力規則のリストから「都道府県」をリスト表示させるようにします。
次にA列を選択すれば作業列(E列)にSheet2の表内の価格がある品名のみを表示するようにし、
それを入力規則のリスト候補に使用します。
そのためにまず↓のコードをSheet1のシートモジュールにしてください。
Private Sub Worksheet_Change(ByVal Target As Range) '//この行から//
Dim i As Long, lastRow As Long
Dim c As Range, wS As Worksheet
If Intersect(Target, Range("A:A")) Is Nothing Or Target.Count > 1 Then Exit Sub
Set wS = Worksheets("Sheet2")
lastRow = Cells(Rows.Count, "E").End(xlUp).Row
If lastRow > 1 Then
Range(Cells(2, "E"), Cells(lastRow, "E")).ClearContents
End If
Set c = wS.Rows(1).Find(what:=Target, LookIn:=xlValues, lookat:=xlWhole)
For i = 2 To wS.Cells(Rows.Count, c.Column).End(xlUp).Row
If wS.Cells(i, c.Column) <> "" Then
Cells(Rows.Count, "E").End(xlUp).Offset(1) = wS.Cells(i, "A")
End If
Next i
Target.Offset(, 1).ClearContents
End Sub '//この行まで//
これでA列のリストを選ぶたびにE列に価格がある品名だけが表示されます。
次にB列には入力規則のリストを設定し、元の値の欄に
=OFFSET(E$1,1,,COUNTA(E:E)-1)
という数式を入れます。
最後にC2セルに
=IF(COUNTBLANK(A2:B2),"",INDEX(Sheet2!B:D,MATCH(B2,Sheet2!A:A,0),MATCH(A2,Sheet2!B$1:D$1,0)))
という数式を入れフィルハンドルで下へずぃ~~~!っとコピー!
これでなんとかお望みの動きにならないでしょうか。
※ 作業列が目障りであれば非表示にするか、遠く離れた列にしてください。
尚、作業列の列番号が変わるとVBAのコードと入力規則の数式も変わってきます。m(_ _)m
No.1
- 回答日時:
ありがとうございます。
言葉をくっつける方法は見てたのですが、
これはこれでアリかなと思ってましたが、
自分だけ用としてのデータだといいかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの複数ブックのシートを1つまとめたい 都道府県ごとに47ブックがあり、そのシートのデータを1 5 2022/11/15 14:57
- 地域研究 女余りと男余りについて 2 2022/11/28 08:41
- その他(職業・資格) 危険物乙4についてです。 質問なのですが 先日、10月30日に群馬県で危険物乙4の試験をしてきました 3 2022/11/03 19:06
- Visual Basic(VBA) Excel VBA 転記について 2 2023/02/28 08:34
- Excel(エクセル) ExcelのVLOOKUP関数 7 2022/08/23 06:46
- 転職 長く続けられる好条件の求人でしょうか? 3 2023/07/12 18:45
- Excel(エクセル) エクセルのマクロを教えてください。 2 2022/03/28 13:14
- クーポン・割引券 全国割で、都道府県の割引も併用出来るらしいですが、 その場合は、普通にヤフートラベルや楽天トラベルで 1 2022/10/11 21:19
- 不動産業・賃貸業 100万円の中古マンションを購入する時の概算費用教えて下さい。 2 2022/08/22 21:35
- その他(ニュース・時事問題) 「地域ブロック割」(県民割)の経費は誰が負担しているのでしょうか。 2 2022/05/30 23:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【関数】スペースがいくつ入っ...
-
西暦や和暦の表示をyyyymmdd表...
-
Excelのセルを飛ばして入力する
-
Excelのオートフィル
-
別シートからの文字を変更
-
Excel 2019 のピボットテーブル...
-
エクセルの行の抽出について質...
-
【マクロ】エクセルにかいてあ...
-
スプレッドシート クエリ関数 1...
-
エクセルでセルに「氏名を入力...
-
MOS365 Excel Expert / Excel R...
-
excelの不要な行の削除ができな...
-
EXACT関数とIF関数の組み合わせ...
-
スプレッドシートの関数VLOOKUP...
-
Excelで全角を半角にしたいので...
-
Excel初心者です。 詳しい方、...
-
エクセルの数式で教えてください。
-
4つのパターンを表示するEXACT...
-
スマートな関数を教えて下さい。
-
【Excel】セル内の時間帯が特定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報