我一直在尝试编写Access VBA代码,以便为发芽测试自动添加重复项。
基本上我有一个表格,我输入Reps(NoofReps)的总数和每个rep的种子数(RepSize)(例如50个种子)。对于每个添加的记录,我希望它自动为每个代表添加一个记录并自动计算代表编号(即如果我有4个代表则应该添加4个记录,编号为1-4个代表)以及RepSize(例如50个)
我一直在根据这个论坛和其他人的信息尝试各种循环但是仍然会因为它生成的记录数而出错。我尝试了“Do while”和“Do Until”,但在任何一种情况下都得到相同的结果。
有人可以让我知道我哪里出错吗?...如果我想要2个代表那么它会增加2个,如果我想要3然后它的246个,如果我想要4则增加> 30,000 !!! / p>
为了尝试修复代码,我已经开始在iNoofReps中手动输入代表的数量,以便我知道错误在代码中,而不是从表单中。
ExcelDocument workbookForXLSX = new ExcelDocument();
for (int i=0; i<fileCount; i++){
ExcelDocument workbookForHTML = new ExcelDocument();
workbookForHTML.easy_LoadHTMLFile(filePath[i]);//or stream to the file
workbookForXLSX.easy_addWorksheet((ExcelWorksheet)workbookForHTML.easy_getSheetAt(0));
workbookForHTML.Dispose();
}
workbookForXLSX.easy_WriteXLSXFile(filePathXLSX);
workbookForXLSX.Dispose();
任何帮助将不胜感激!!!
答案 0 :(得分:0)
嗯,你接下来要移动rstGReps.moveNext
,然后你在下一步移动后比较rstGReps("RepNo") = (iNoofReps) + 1
,因此在空记录上,因此总是等于假。
Loop Until iRepNo = (iNoofReps) + 1
应该修复它,然后你不再引用记录集了,记录集在你引用它时已经被设置为下一条记录。
你也可以通过删除这一行来修复它:
rstGReps.moveNext
由于rstGReps.AddNew
已将记录集移动到新的空白记录,因此在添加记录后将其向前移动没有多大意义。如果您将其删除,则可能需要删除+ 1
Loop Until rstGReps("RepNo") = (iNoofReps) + 1