• ベストアンサー

エクセルxbs選択肢のインデックス

EXCEL入力規則の「リスト」で元の値がセルに範囲指定(例:’シート名’$c$1:$c$10)の際に出力される選択肢(例の場合c1~c10の内容)より値を選択した際のインデックスを求めたいのですが、 ご教示お願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.12

> 作り方がまずったのか 何度も言いますが、こちらではどのようにしたのか不明ですので異常処理に飛んだとか言われてもわかりません。 何度も言いますが、Testがまともに動くのを確認してから Private Sub Worksheet_Change(ByVal Target As Range) に移行したほうがいいんじゃないですか。 何度も何度もいいますが、こちらではそちらのコードは見えないので、飛んだとか爆発したとか意味不明です。

horirin3
質問者

お礼

色々検討頂きましたが、ユーザの一言で選択方式は無くなり、固定値設定に落ち着きました。 ご指導いただきありがとうございました。 貴重なお時間を頂きまして有難うございました。 大変勉強になりました。

その他の回答 (12)

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.2

以下で試してみてください リストはA1として、インデックスは0から始まります。B1にインデックスを書き込みます。 Sub Test() Dim i As Long Dim mList As String Dim mRng As Range With Range("A1").Validation mList = Right(.Formula1, Len(.Formula1) - 1) End With Set mRng = Evaluate(mList) For i = 0 To mRng.Rows.Count - 1 If Range("A1").Value = mRng.Cells(i + 1, "A").Value Then Range("B1").Value = i Exit For End If Next Set mRng = Nothing End Sub

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

「リスト」に名前を付けてから、定義した名前を数式やドロップダウンリストで使ってみて下さい。

関連するQ&A