【发布时间】:2011-03-19 12:33:18
【问题描述】:
我的应用程序使用一个排列不当的 Excel 电子表格作为数据源。我说设计不好,因为除了找到日期和时间的列之外,每一行都没有唯一标识符。
长话短说,我的应用程序使用每一行的日期和时间作为标识符,以从该行的其他列中检索信息。这个想法是,用户将从 ListBox 中选择一个日期/时间,此时应用程序将遍历 DataSet 并在右列中找到日期/时间并在该行中显示其余信息。
我的问题是 ListBox 控件没有被填充,我不明白为什么......
这是电子表格中的示例行:(每个 | 字符代表一个单元格边框)
Team - FNB | O | 2010/02/18 08:59:24 | 5034 | Frederico Turnbridge | 27839963586 | SA - MOBILE - (ZA) | | 69 | O_NORMAL | | 00:01:06 |R 2.83
这是我的代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim j As Integer = 0
If TextBox1.Text.Length = 4 Then
For i As Integer = 0 To CallData.Tables(0).Rows.Count - 1
If CallData.Tables(0).Rows(i)(3).ToString = TextBox1.Text _
And CallData.Tables(0).Rows(i)(2).ToString > DateTimePicker1.ToString _
And CallData.Tables(0).Rows(i)(2).ToString < DateTimePicker2.ToString Then
ListBox1.BeginUpdate()
ListBox1.Items.Add(CallData.Tables(0).Rows(i)(2).ToString)
ListBox1.EndUpdate()
j = j + 1
End If
Next
Label1.Text = j & " records found."
End If
End Sub
这基本上适用于用户将指定要搜索的术语(无论是电话号码还是(在本例中)电话分机)和日期范围的搜索。 现在,我知道电子表格(以及数据集)包含日期列(列索引 2)在我指定的日期范围内的信息,并且之后的列包含我的搜索词,但我我没有得到任何结果。
有什么想法吗?
【问题讨论】:
-
你真的试过
MsgBox(CallData.Tables(0).Rows(i)(2).ToString)吗? -
马克,不,我没有尝试过 MsgBox,而是在值上设置了手表