-3

您能否帮我解决以下问题:

我在第 106 到 109 行中有一个数据集。在单元格 A102 中,我有一个当前为 3 的值。第 103 到 105 行是空的。

我正在寻找一个 VBA 代码,它将根据 A102 中的单元格值更改第 102 行下方的空行数。

例如:如果我将 A102 更改为 0,则第 103-105 行将被删除,我的数据集将从第 103 行开始。如果我将 A102 更改为 8,则将插入 8 行,数据集将从第 111 行开始。 等等。

我真的不知道该怎么做,所以我真的很感谢你的帮助!

4

1 回答 1

1

基本上,你所追求的是这个。

Private Sub Worksheet_Change(ByVal Target As Range)

Dim n As Integer
Dim n1 As Integer

'Do nothing if more than one cell is changed or content deleted

If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
    If Target.Address = "$A$102" Then
        If IsNumeric(Target) Then
            n = 0

            While Range("A103").Offset(n, 0) = ""
                n = n + 1
            Wend

        End If

        For n1 = 1 To n
            Rows("103:103").Select
            Selection.Delete Shift:=xlUp
        Next

        For n1 = 1 To Range("A102")
            Rows("103:103").Select
            Selection.Insert Shift:=xlDown
        Next

    End If

End Sub
于 2013-06-27T13:22:27.113 回答