在同一 Excel 文件中导出三个不同大小的列表框
Exporting three listboxes of different size in the same Excel file
我正在尝试使用 NPOI 包在 .xlsx 文件的三列中导出三个不同列表框的内容。 Form10.ListBox1 和 Form10.ListBox2 总是由相同数量的元素组成,而 Form6.ListBox1 的大小不同——总是比其他两个小;因此,将 t 声明为 LB1 的大小,将 r 声明为 LB2 的大小,我处理了以下代码:
rowz.CreateCell(0).SetCellValue(ich.CreateRichTextString("Time"))
rowz.CreateCell(1).SetCellValue(ich.CreateRichTextString("HRR"))
rowz.CreateCell(2).SetCellValue(ich.CreateRichTextString("SHRR"))
For i As Integer = 1 To t
For j As Integer = 1 To r
Dim row As IRow = worksheet.CreateRow(i)
row.CreateCell(0).SetCellValue(CDbl(Form10.ListBox1.Items(i - 1)))
row.CreateCell(1).SetCellValue(CDbl(Form10.ListBox2.Items(i - 1)))
row.CreateCell(2).SetCellValue(CDbl(Form6.ListBox1.Items(j - 1)))
rows.Add(row)
Next j
Next i
我的文件已成功导出,但第三列 - Form6.ListBox1 - 仅导出零,而第一列和第二列已正确导出。我哪里做错了?谢谢大家会回答我。最好的问候。
如果你坚持下去,你会得到这个:(listbox3 元素的数量为 4)
LB1.value1 - LB2.value1 - LB3.value1
LB1.value1 - LB2.value1 - LB3.value2
LB1.value1 - LB2.value1 - LB3.value3
LB1.value1 - LB2.value1 - LB3.value4
LB1.value2 - LB2.value2 - LB3.value1
LB1.value2 - LB2.value2 - LB3.value2
LB1.value2 - LB2.value2 - LB3.value3
LB1.value2 - LB2.value2 - LB3.value4
你必须这样做:
rowz.CreateCell(0).SetCellValue(ich.CreateRichTextString("Time"))
rowz.CreateCell(1).SetCellValue(ich.CreateRichTextString("HRR"))
rowz.CreateCell(2).SetCellValue(ich.CreateRichTextString("SHRR"))
For i As Integer = 1 To t
Dim row As IRow = worksheet.CreateRow(i)
row.CreateCell(0).SetCellValue(CDbl(Form10.ListBox1.Items(i - 1)))
row.CreateCell(1).SetCellValue(CDbl(Form10.ListBox2.Items(i - 1)))
If (i <= r) Then
row.CreateCell(2).SetCellValue(CDbl(Form6.ListBox1.Items(i - 1)))
End If
rows.Add(row)
Next i
我正在尝试使用 NPOI 包在 .xlsx 文件的三列中导出三个不同列表框的内容。 Form10.ListBox1 和 Form10.ListBox2 总是由相同数量的元素组成,而 Form6.ListBox1 的大小不同——总是比其他两个小;因此,将 t 声明为 LB1 的大小,将 r 声明为 LB2 的大小,我处理了以下代码:
rowz.CreateCell(0).SetCellValue(ich.CreateRichTextString("Time"))
rowz.CreateCell(1).SetCellValue(ich.CreateRichTextString("HRR"))
rowz.CreateCell(2).SetCellValue(ich.CreateRichTextString("SHRR"))
For i As Integer = 1 To t
For j As Integer = 1 To r
Dim row As IRow = worksheet.CreateRow(i)
row.CreateCell(0).SetCellValue(CDbl(Form10.ListBox1.Items(i - 1)))
row.CreateCell(1).SetCellValue(CDbl(Form10.ListBox2.Items(i - 1)))
row.CreateCell(2).SetCellValue(CDbl(Form6.ListBox1.Items(j - 1)))
rows.Add(row)
Next j
Next i
我的文件已成功导出,但第三列 - Form6.ListBox1 - 仅导出零,而第一列和第二列已正确导出。我哪里做错了?谢谢大家会回答我。最好的问候。
如果你坚持下去,你会得到这个:(listbox3 元素的数量为 4)
LB1.value1 - LB2.value1 - LB3.value1
LB1.value1 - LB2.value1 - LB3.value2
LB1.value1 - LB2.value1 - LB3.value3
LB1.value1 - LB2.value1 - LB3.value4
LB1.value2 - LB2.value2 - LB3.value1
LB1.value2 - LB2.value2 - LB3.value2
LB1.value2 - LB2.value2 - LB3.value3
LB1.value2 - LB2.value2 - LB3.value4
你必须这样做:
rowz.CreateCell(0).SetCellValue(ich.CreateRichTextString("Time"))
rowz.CreateCell(1).SetCellValue(ich.CreateRichTextString("HRR"))
rowz.CreateCell(2).SetCellValue(ich.CreateRichTextString("SHRR"))
For i As Integer = 1 To t
Dim row As IRow = worksheet.CreateRow(i)
row.CreateCell(0).SetCellValue(CDbl(Form10.ListBox1.Items(i - 1)))
row.CreateCell(1).SetCellValue(CDbl(Form10.ListBox2.Items(i - 1)))
If (i <= r) Then
row.CreateCell(2).SetCellValue(CDbl(Form6.ListBox1.Items(i - 1)))
End If
rows.Add(row)
Next i