Sort Data Table 複数の条件で並び替え

Data Tableを2列の条件で並び替えたいです。

優先順位1番はDateTime型の列で、次は任意の文字列(青、緑、黄、桃)です。

(From x In dt)など調べましたが、うまくいきません。

どなたかご教授いただけますでしょうか。

こんにちは

基本的にはSelectメソッドの第2引数にソート条件を指定する形になるかと思います。
例えば
dt.Select("","日時, 色")

いかがでしょうか?

ご返信ありがとうございます。

selectで2つの条件でソートできるとのこと、ご回答いただきありがとうございます。

ちなみに、「色」の部分を任意の形で並び替えたいのですが、どのように記述すればよろしいでしょうか。。

エクセルだと下記のようになるのですが、、、

こんにちは

今回色を表す文字が一文字ですので、あらかじめ
colorList="赤青黄緑"
のような文字列変数を用意しておいて

dt.AsEnumerable.OrderBy(function(r) r("日時")).ThenBy(function(r) colorList.IndexOf(r("色").ToString)).CopyToDataTable

みたいな感じでいかがでしょうか?

1 Like

こんにちは

教えていただいた方法で、思った通りの結果を出すことができました!

勉強させていただきました。
本当にありがとうございました。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.