我在下面编写的代码用于替换工作表中的一些索引匹配公式。它似乎工作得很好,但我认为循环有点笨拙,可能容易出错。有没有人有任何建议的改进?
CompanyData = new Mongo.Collection('companyData');
CompanyData.attachSchema(new SimpleSchema({
allFields: {
type: String,
allowedValues: ['title', 'logo', 'url'],
autoform: {
type: "selectize"
}
},
title:{
type:'String',
label:'Name',
unique:true,
max:100
},
logo:{
type:'String',
label:'Logo',
optional:true
}
}));
由于
答案 0 :(得分:1)
首先,您可以将这个漫长的过程分解为几个较小的方法。例如,您可以使用ProcessSheet过程将每个工作表传递到其中:
For ws = 1 To WS_count 'loop through each sheet in the customer workbook
这肯定有助于提高可读性等。如果您仍然不满意,那么继续将循环分解为更小的逻辑程序。不要太疯狂。
除了一些错误检查和值验证在深层嵌套循环中会有很长的路要走。例如,确保各种计算变量,例如' lastrow'是正确的还是在有效的阈值之内等。
最后,而不是通过你的长循环洒下的硬编码值,就像神奇的camoflauged调试 - 来自地狱 - 在哪里?s-waldo仙女;更喜欢一些有意义的Const变量替代品,即
Private Const SIC_START_ROW = 2