If MessageBox.Show("确认下达吗","确认",MessageBoxButtons.OKCancel,messageboxicon.question) = DialogResult.OK Then
Dim dr As DataRow \'引用新表中要增加的行
Dim dr2 As DataRow \'遍历该表中的所有行并找到符合条件的行
For Each dr2 In DataTables("生产计划单").DataRows()
If dr2 IsNot Nothing
If dr2.IsNull("标签需求量") = True Or dr2.IsNull("筒子需求量") = True Or dr2.IsNull("纸箱需求量") = True Then \'如果有一列为空则重新循环
Continue For
Else
Dim dr3 As DataRow = DataTables("生产计划单").Find("产品名称 = \'" & dr2("产品名称") & "\'","序号 desc") \'找到与dr2的产品名称相同的所有行,取序号最大的那一行
dr = DataTables("物料需求单").AddNew() \'往新表中增加一行
dr("物料名称") = dr3("所需筒子") \'往新表中写入该列数据
dr("需求数量") = dr3("筒子需求量")
dr("下单时间") = Date.Today \'写入当前日期
dr = DataTables("物料需求单").AddNew() \'往新表中增加一行
dr("物料名称") = dr3("所需标签") \'往新表中写入该列数据
dr("需求数量") = dr3("标签需求量")
dr("下单时间") = Date.Today \'写入当前日期
dr = DataTables("物料需求单").AddNew() \'往新表中增加一行
dr("物料名称") = dr3("所需纸箱")
dr("需求数量") = dr3("纸箱需求量") \'往新表中写入该列数据
dr("下单时间") = Date.Today \'写入当前日期
DataTables("生产计划单").DeleteFor("产品名称 = \'" & dr3("产品名称") & "\'") \'避免重复向新表写入数据
End If
End If
Next
DataTables("生产计划单").DeleteFor("")
End If