竖表变横表(支持固定列)
根据LoveCherry的竖变横方法改进而来
Public DataTable MakeData(DataTable dt,int iColumnSize,int[] iColumnID) //iColumnsize:重复列数 iColumnID 需要横向排列的序号数组
-
int ColumnCount=iColumnID.Length;
int TotalRows=dt.Rows.Count;
int itmp=dt.Rows.Count%iColumnSize; //行数
int iRows; //行数
ถ้า(itmp==0)
iRows=dt.Rows.Count/iColumnSize;
อื่น
iRows=dt.Rows.Count/iColumnSize+1;
DataTable newdt=ใหม่ DataTable();
สำหรับ(int i=0;i<iColumnSize;i++)
-
สำหรับ(int j=0;j<ColumnCount;j++)
{ สตริง aa=dt.Columns[iColumnID[j]].ColumnName+i;
int bb=iColumnID[เจ];
DataColumn dc=ใหม่ DataColumn(dt.Columns[iColumnID[j]].ColumnName+i,dt.Columns[iColumnID[j]].DataType);
newdt.Columns.Add(dc);
-
-
สำหรับ(int i=0;i<iRows;i++)
-
DataRow dr=newdt.NewRow();
สำหรับ(int j=0;j<iColumnSize;j++)
-
สำหรับ(int k=0;k<ColumnCount;k++)
-
ถ้า((i+j*iColumnSize)<dt.Rows.Count)
-
สตริง aa=dt.Columns[iColumnID[k]].ColumnName+j;
พยายาม
-
dr[dt.Columns[iColumnID[k]].ColumnName+j]=dt.Rows[iRows*j+i][iColumnID[k]];
-
จับ
-
-
-
-
newdt.Rows.Add(ดร.);
-
กลับนิวท์;
-