Filtrowanie DataGridView przedziałem czasowym od ->do

0

Witam,
chciałbym dołożyć filtr który umożliwi flitowanie danych przedziałem czasowym (od daty -> do daty)
Używam prostego filtrowania na zasadzie wyszukania takiej samej daty.

       Dim DataView As New DataView(datatable)
       DataView.RowFilter = String.Format("DataW like '%" & findData.Text & "%'")
       tabela.DataSource = DataView

Ktoś ma jakiś pomysł rozwiązania mojego problemu ??
Dziękuję i pozdrawiam

0

eee DataW > #2017/01/01# and DataW < #2017/01/31#

0

Przede wszystkim dziękuję za pomoc.
A gdyby zakres miałby pobierany z pól tekstowych jakby to mogło wyglądać ?

0

eee nie za bardzo rozumiem gdzie masz problem. No pobierasz wartość z textboxa czy co tam masz i "składasz" warunek z tych właściwości. Musisz tylko pilnować, żeby format daty był taki yyyy/mm/dd

0

Hmmm.... Chodzi o samą składnię warunku i metodę rozwiązania.

Po wybraniu daty z kalendarza (format mam ustalony w DataTimePicker dd.MM.yyyy)
-> Po zamknięciu wysyła wartość do tekst boxa (findDataOd)
To samo w (findDataDo) -> po zmianie tej ostatniej wartości ma się dokonać wyszukanie :

DataView.RowFilter = String.Format("DataW > " & findDataOd.Text & " and DataW < " & findDataDo.Text & "")

Takie rozwiązanie, wyrzuca mi błąd. No i tutaj mam problem.

0

po pierwsze data musi być w płotkach # a po drugie musi mieć format tak jak wcześniej pisałem. Nie wiem też czemu używasz & do łączenia stringów zamiast + - & to logiczne/bitowe and a nie konkatenacja

0

A interpolacja stringów?

string data1 = "2017/01/01";
string data2 = "2017/02/02";

Console.WriteLine($"DataW > #{data1}# and DataW < #{data2}#");

// output:
// DataW > #2017/01/01# and DataW < #2017/02/02#

1 użytkowników online, w tym zalogowanych: 0, gości: 1