有多个excel表,有一个共同的索引(如姓名),如
保留标题 BTROW = 1 Set SHX = Worksheets(汇总) SHX.Range(A BTROW + 1 :HZ65536).ClearContents Str_coon = HDR=yes';Data Source = ThisWorkbook.FullName Rem 遍历每个分表文件 For Each SH In Worksheets If SH.Name SHX.Name Then Rem提示信息。
XCOL).Value ]) AS [ SHX.Cells(BTROW,。
50).End(xlToLeft).Column If StrBT Then StrBT = StrBT , 1) + 1, 2) + 1) = SQLARR '//(0 TO X)的数组行列都要+1,(1 TO X) 的不要 。
XCOL).Value ] Else StrBT = StrBT NULL AS [ SHX.Cells(BTROW, If XCOL = 1 Then StrBT = StrBT [ SHX.Cells(BTROW, XCOL).Value ] End If Next Rem 查询数据, UBound(SQLARR, ICOL).Value Then BOOL = True Exit For End If Next If StrBT Then StrBT = StrBT , 50).End(xlToLeft).Column If SHX.Cells(BTROW, XCOL).Value ] End If Next StrSQL = SELECT StrBT StrSQL = StrSQL FROM [ SHX.Name $A BTROW :HZ] StrSQL = StrSQL GROUP BY [ SHX.Cells(BTROW,结果为数组 StrSQL = SELECT StrBT StrSQL = StrSQL FROM [ SH.Name $A BTROW :HZ] SQLARR = GET_SQL_To_Arr(StrSQL。
1) + 1。
2) + 1) = SQLARR '//(0 TO X)的数组行列都要+1, False) Rem 粘贴数据 SHX.Range(A BTROW + 1 :HZ65536).ClearContents SHX.Range(A BTROW + 1).Resize(UBound(SQLARR, 1).Value ] SQLARR = GET_SQL_To_Arr(StrSQL。
If BOOL = True Then StrBT = StrBT [ SHX.Cells(BTROW,在状态栏显示 Application.StatusBar = 当前表是: SH.Name DoEvents StrBT = For XCOL = 1 To SHX.Cells(BTROW, UBound(SQLARR, 50).End(xlToLeft).Column BOOL = False For ICOL = 1 To SH.Cells(BTROW, Str_coon。
False) Rem 粘贴数据 LASTROW = SHX.Range(A65536).End(3).Row + 1 SHX.Range(A LASTROW).Resize(UBound(SQLARR, XCOL).Value = SH.Cells(BTROW, Rem 清空汇总表原有数据, XCOL).Value ] Else StrBT = StrBT MAX([ SHX.Cells(BTROW, Str_coon,(1 TO X) 的不要 End If Next Rem 整理成一行 StrBT = For XCOL = 1 To SHX.Cells(BTROW。
- 上一篇:VBA之Listbox控件基础教程
- 下一篇:VBA 在邮件正文中插入带格式表格
评论列表