VBA User Form переписывает данные и не должен - PullRequest
0 голосов
/ 03 января 2019

Мне нужна помощь с моей формой Excel.У меня есть таблица, которая выглядит следующим образом.

        Column1      Columns2     Column3     Column4
Row1                 formula
Row2                 formula
Row3                 formula
---------------------------------------------------
Row4    Value        formula      Value        Value
Row5    Value        formula      Value        Value
Row6    Value        formula      Value        Value

Здесь вы можете увидеть уже первую «проблему» всякий раз, когда мне нужно вставить новые данные с пользовательской формы, я создаю новые строки в верхней части, так чтоновые данные находятся сверху, а не внизу.Вторая проблема заключается в том, что в столбце 2 всегда есть формула, прежде чем я ввожу данные с помощью пользовательской формы (поэтому строка не полностью пуста. Теперь у меня есть следующий код для моей пользовательской формы

Private Sub Insert_Click()
    Dim iRow As Long
    Dim ws As Worksheet
    Set ws = Worksheets("Sheet1")
    iRow = ws.Columns(1).Find(What:="*", SearchOrder:=xlRows, _
        SearchDirection:=xlNext, LookIn:=xlValues).Row + 1
    With ws
        .Cells(iRow, 1).Value = Me.Column1.Value
        .Cells(iRow, 3).Value = Me.Column3.Value
        .Cells(iRow, 4).Value = Me.Column4.Value
    End With
        Me.AssetClass.Value = ""
        Me.Topic.Value = ""
        Me.BBG.Value = ""
End Sub

Пока чтотак хорошо. Когда я знаю, заполни мою пользовательскую форму, я получаю следующее.

        Column1      Columns2     Column3     Column4
Row1     Value       formula      Value        Value
Row2                 formula
Row3                 formula
---------------------------------------------------
Row4    Value        formula      Value        Value
Row5    Value        formula      Value        Value
Row6    Value        formula      Value        Value

Даже если это именно то, что я хочу, использование пользовательской формы во второй раз для вставки данных для Row2 Перезаписывает значения вrow1 вместо того, чтобы помещать их в следующий ряд.

Есть предложения? Заранее спасибо!

...