我的主要问题是如何遍历指定数量的列,并进行适当的检查:从给定的起始列开始,我达到了停止值(原始整数),当前单元格是否为空,是否存在右边的另一栏我可以接下来评估?
整体情况......
我有一个带有标识符列(fname,lname)的表,然后是用于保存数据的其他列。大多数单元格为NULL。当不为NULL时,单元格包含整数。
我想将第一个表格中的信息转换为第二个表格。
请参阅网站链接以查看我所描述的图片。 http://i.stack.imgur.com/iChCr.png
可以推断,从每个非空单元格开始,1替换该单元格的内容,并替换所有连续的相邻列,直到等于原始单元格的值的列数。因此,John Doe的C列保持3,在新的(或更新的?)表中,三列C,D,E的内容的值为1.
请注意,史蒂夫史密斯有重叠!方向要求将列C和D设置为1,但是来自列A的指令是用1替换A,B,C,D,E和F的内容。在这种情况下,列C和D得到sum,因此每个单元格等于2.随后的非重叠单元格E,F等于1(从A开始更新的最后一列)。
目前的纲要:
- 找到最后一个非空列
- 存储来自该列的单元格的值
- 开始使用该列的单元格并继续到最后一列 列或直到达到存储值的值,插入1(INT)
-re-scan table查找前面的第一个非空列 列现在填充数字
- 存储来自该列的单元格的值
- 使用该列开始,插入数字1:(1)表示与存储的数字相等的列数,或者直到到达最后一列,继续向右插入1,如果存储的数字的值为(2)尚未到达,但达到非空列,然后将1添加到该单元格中的现有值
根据我的搜索,我能够使用长而有序的case语句来获取最后一个非空列的名称,并使用long cowellce来获取相应单元格中的值,并将这些结果放入临时表。但那就是:/
建议表示赞赏,欢迎提出问题!