欢迎访问!

Office学习网

您现在的位置是:主页 > 网络技术

网络技术

有多个excel表,有一个共同的索引(如姓名),如

发布时间:2026-08-30网络技术评论
有多个excel表,有一个共同的索引(如姓名),如何将其合并到一个表中(不想多次使...实际问题描述:从ERP中导出来

保留标题 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。

广告位

热心评论

评论列表