「範囲内で検索(LookUpRange)」もしくは「データテーブルを検索(LookUpData Table)」で、
同一のデータが複数あるときに一番後ろの場所を取得する方法はありませんか?
例えば、A2とA5に”みかん”という商品名が入っていた場合、検索結果が「A5」と出るようにしたいです。
「範囲内で検索(LookUpRange)」もしくは「データテーブルを検索(LookUpData Table)」で、
同一のデータが複数あるときに一番後ろの場所を取得する方法はありませんか?
例えば、A2とA5に”みかん”という商品名が入っていた場合、検索結果が「A5」と出るようにしたいです。
シート上にある列の数にも因りましょうが、DataTable型にしたのち、地道に検索するかなぁ。
「範囲を読み込み」アクティビティでDataTable化したのち、
「データ列を追加」アクティビティで「順番列」を追加
「繰り返し (各行)」アクティビティ中で、その「順番列」に行数を代入し、
「データテーブルを並べ替え」アクティビティで、「順番列」を降順SORT
そして、「データテーブルを検索」アクティビティで、対象を検索。。。
「データテーブルを検索」…設定が大変そうです
こんにちは
少々複雑ですがdatatableへの以下の処理でも実現可能かと思います。(0始まりの数字で返ってきますのでその点ご注意ください)
index = dt.AsEnumerable.Where(function(r) r("果物名").toString="みかん").Select(function(r) r.Table.Rows.IndexOf(r)).Last()
「範囲内で検索(LookUpRange)」もしくは「データテーブルを検索(LookUpData Table)」を使用しませんが
取得したデータを全行繰り返しする中で検索するのがシンプルかと。
※ForEachRow の「現在のインデックス」を活用し、条件に一致した際のインダックスを変数に退避しておくイメージ