VBA学习笔记2
VBA学习笔记2 - 用VBA解决行列转制问题
需求
把人事的表从竖排的格式转成横排的
原始表 数据胡诌的

需要做到的样子

原理和伪代码
一共需要三个输入:源数据的第一个格子(Sheet1,C2),目标的第一个格子(Sheet2,C2),项目数量,和在源数据里面一共有多少列。
简单定义一下
- Source (a,b)
- Target (c.d)
- Item NO. X
- Total Row NO. Y
在取得x,y,m,n,r的数字之后
要做的是一个一个把sheet1里面数据填到Sheet2里面去
Sheet1!C2 => Sheet2!C2
Sheet1!C3 => Sheet2!D2
…
Sheet1!C6 => Sheet2!C3
Sheet1!C7 => Sheet2!D3
伪代码的话大致应该是这样的:For (j=0,j<Y/X);
{ b=b+Xj;
d=d+j;
For (i=0,i<X)
{ (c+i,d) = (a,b+i)}
}
然后就是实现了,就是让选两个格子,然后手工输入一下项目行数,根据第一个格子的列号找出一共有几列数字,之后应用一下这个循环来填充数字。
七牛挂了补不了图了…要等到8月六号

