|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
- Dim Arr, ar, n%, k%, s$, d
- With Worksheets("入库单")
- n = .[b5].End(4).Row() '取得B5单元格开始,连续区域中的最后一个非空单元格的行号
- If n = 6 Then End '如果N为6,退出
- d = .[c4]: s = .[k4]
- Arr = .[b7:k7].Resize(n - 6) 'Arr的区域 为 B7:Kn
- ar = .[l7].Resize(n - 6) 'ar的区域 为l7:ln
- '清除B7:Bn,F7:In,K7:Ln这三个区域的内容
- Union(Range(.Cells(7, 2), .Cells(n, 2)), Range(.Cells(7, 6), .Cells(n, 9)), _
- Range(.Cells(7, 11), .Cells(n, 12))).ClearContents
-
- With Worksheets("入库记录")
- k = .[b1048576].End(3).Row + 1 '取得B1048576 单元格向上的第一个非空单元格所在的下一行的行号,相当于B列有效区域的下一行的行号
- If k < 5 Then k = 5
- .Cells(k, 2).Resize(n - 6, 10) = Arr '在 B列至K列 回填
- .Cells(k, 14).Resize(n - 6) = ar '在N列填充原l 列的内容
- .Cells(k, 1).Resize(n - 6).Formula = "=row()-4" ' 在A 列编号
- .Cells(k, 12).Resize(n - 6) = d
- .Cells(k, 13).Resize(n - 6) = s
复制代码 |
|