|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
用VBA代码注释器翻译的,仅供参考
Sub 批量脊背() '子程序 批量脊背()
arr = Sheet1.Range("a1").CurrentRegion.Value 'arr= Sheet1的<单元格>区域("a1" )的当前区域的值
Sheet4.Cells.UnMerge ' Sheet4的单元格集合的UnMerge
Sheet3.Cells.Copy Sheet4.Range("a1") ' Sheet3的单元格集合的复制 Sheet4的<单元格>区域("a1")
brr = Sheet3.Range("a1:e8").Value 'brr= Sheet3的<单元格>区域("a1:e8" )的值
n = 0 'n=0
For i = 2 To UBound(arr) '设定变量范围为i=2到<数组上限>(arr)
If arr(i, 13) <> "" Then '如果 arr(i,13) 不等于 空值 则执行
n = n + 1 'n=n+1
If n Mod 5 = 1 And n > 2 Then '如果 nMod5=1 并且 n>2 则执行
Sheet4.Cells((n \ 5) * 8 - 8 + 1, 1).Resize(UBound(brr), UBound(brr, 2)) = brr ' Sheet4的<单元格>坐标((n\5)*8-8+1,1 )的<重调大小>(<数组上限>(brr),<数组上限>(brr,2))=brr
Sheet3.Rows("1:8").Copy Sheet4.Range("a" & (n \ 5) * 8 + 1) ' Sheet3的<行>坐标("1:8" )的复制 Sheet4的<单元格>区域("a" & (n\5)*8+1)
brr = Sheet3.Range("a1:e8").Value 'brr= Sheet3的<单元格>区域("a1:e8" )的值
End If 'If判断过程结束
brr(4, ((n - 1) Mod 5) + 1) = arr(i, 8) 'brr(4,((n-1)Mod5)+1)=arr(i,8)
brr(6, ((n - 1) Mod 5) + 1) = arr(i, 13) 'brr(6,((n-1)Mod5)+1)=arr(i,13)
End If 'If判断过程结束
Next '下一个
Sheet4.Cells(Round(n / 5 + 0.49, 0) * 8 - 8 + 1, 1).Resize(UBound(brr), UBound(brr, 2)) = brr ' Sheet4的<单元格>坐标(Round(n/5+ 0的49,0)*8-8+1,1 )的<重调大小>(<数组上限>(brr),<数组上限>(brr,2))=brr
设置分页 Sheet4, 8, Round(n / 5 + 0.49, 0) * 8 - 8 '设置分页Sheet4,8,Round(n/5+ 0的49,0)*8-8
End Sub '子程序结束
Sub 设置分页(sht, a, b) '子程序 设置分页(sht,a,b)
ActiveSheet.ResetAllPageBreaks ' 活动工作表的ResetAllPageBreaks
For i = a To b Step a '设定变量范围为i=a到b步进为a
sht.HPageBreaks.Add Before:=sht.Range("a" & i + 1) ' sht的HPageBreaks的添加 前面于= sht的<单元格>区域("a" & i + 1)
Next '下一个
End Sub '子程序结束 |
评分
-
1
查看全部评分
-
|