【问题标题】:Excel VBA - SUM cells in column before blank cellExcel VBA - 在空白单元格之前的列中求和单元格
【发布时间】:2017-03-30 11:53:17
【问题描述】:

我有 Excel Offer Sheet 的位置和宏,当 B 列中的值不同于 0 时,它会将行从这张表转移到第二张表。它还在单词“SUMA”之后添加空行。

Option Explicit
Dim MyWorkbook As Workbook
Dim MyWorksheet As Worksheet
Dim MyOutputWorksheet As Worksheet

Sub PullData()
Set MyWorkbook = Workbooks(ActiveWorkbook.Name)
Set MyWorksheet = MyWorkbook.Sheets("Roboczy")
Set MyOutputWorksheet = MyWorkbook.Sheets("Oferta")

    Dim myValue As Long
    Dim RowPointer As Long

    For RowPointer = 1 To MyWorksheet.Cells(Rows.Count, "B").End(xlUp).Row
        If MyWorksheet.Range("B" & RowPointer).Value > 0 And MyWorksheet.Range("B" & RowPointer).Value <> "" Then
            If MyOutputWorksheet.Cells(Rows.Count, "B").End(xlUp).Row > 155 Then
                Exit Sub
            End If
            MyWorksheet.Range(("A" & RowPointer) & ":D" & RowPointer).Copy Destination:=MyOutputWorksheet.Range("A" & MyOutputWorksheet.Cells(Rows.Count, "B").End(xlUp).Row + 1)
        End If
    Next RowPointer


     Dim b As Range
For Each b In MyOutputWorksheet.Range("A1:A200")
 If b.Value Like "*SUMA*" Then
 b.Offset(1, 0).EntireRow.Insert
 End If
Next b

End Sub

我错过了一些可以清除#ADR 的代码!并总结每个部分中的所有单元格。 更多详情 -> Image of Excel sheet

【问题讨论】:

    标签: vba excel sum


    【解决方案1】:

    这纯粹是猜测,因为我看不到 Roboczy 表,但我认为你得到了我所说的 #REF!错误。可能由包含引用范围的公式的源工作表在转换到目标工作表时无效。我能想到的最简单的解决方案是粘贴/特殊值而不是一般粘贴来删除公式: 将您的粘贴行替换为:

    MyWorksheet.Range(("A" & RowPointer) & ":D" & RowPointer).Copy
    MyOutputWorksheet.Range("A" & Cells(MyOutputWorksheet.Rows.Count, "B").End(xlUp).Row + 1).PasteSpecial xlPasteValues
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-26
      • 2017-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-11
      • 2013-03-26
      • 2020-02-03
      相关资源
      最近更新 更多