найдите следующую пустую строку и запишите в нее данные - PullRequest
0 голосов
/ 02 декабря 2018

У меня есть этот рабочий код, который ищет переменную MyVal и, если не найден, записывает данные в следующий пустой столбец.Однако я обнаружил, что в выпадающих списках не нравятся горизонтальные списки, поэтому я переместил все свои данные в вертикальный список.Мне нужно переписать свой код для поиска следующей пустой строки, а затем сослаться на эту строку, чтобы записать данные.Может ли один из вас, эксперты, взглянуть на мой существующий код и помочь мне преобразовать его в поиск и запись в следующую пустую строку вместо следующего пустого столбца?

Sub Copy_To_Borrower_DBase()
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim myVal As String
    Dim sourceRng As Range
    Dim lCol As Long
    MyNote = Sheets("Main").Range("F5").Value & " already exists, do you want to 
    overwrite?"
    myVal = Sheets("Main").Range("F5").Value ' dropdown list
    Set sourceRng = Worksheets("Borrower 
    Database").Range("5:5").Find(What:=myVal, LookAt:=xlWhole) 'locate column 
    where to copy from
    Set ws1 = ThisWorkbook.Sheets("Main")
    Set ws2 = ThisWorkbook.Sheets("Borrower Database")

    If Not sourceRng Is Nothing Then
        Answer = MsgBox(MyNote, vbCritical + vbYesNo, "Overwrite??")
        If Answer = vbNo Then
            Exit Sub
        Else
            With ws2
                Application.EnableEvents = False
                .Cells(5, sourceRng.Column).Value = ws1.Range("F5").Value 'Borrower Name
                .Range(.Cells(6, sourceRng.Column), .Cells(8, sourceRng.Column)).Value = 
                ws1.Range("G6:G8").Value 'Income, Credit Pmt and Car Pmt
                .Range(.Cells(9, sourceRng.Column), .Cells(10, sourceRng.Column)).Value 
                = ws1.Range("G11:G12").Value 'Ratios
                .Cells(11, sourceRng.Column).Value = ws1.Range("G15").Value 'Reserves
                .Cells(12, sourceRng.Column).Value = ws1.Range("D15").Value 'Credit 
                Score
                Application.EnableEvents = True
            End With
        End If
    Else
        With ws2
            Application.EnableEvents = False
            lCol = .Cells(5, .Columns.Count).End(xlToLeft).Offset(, 1).Column
            .Cells(5, lCol).Value = ws1.Range("F5").Value 'Borrower Name
            .Range(.Cells(6, lCol), .Cells(8, lCol)).Value = 
            ws1.Range("G6:G8").Value 'Income, Credit Pmt and Car Pmt
            .Range(.Cells(9, lCol), .Cells(10, lCol)).Value = 
            ws1.Range("G11:G12").Value 'Borrower Name
            .Cells(11, lCol).Value = ws1.Range("G15").Value 'Reserves
            Application.EnableEvents = True
        End With
    End If
End Sub

Любая помощь будет принята с благодарностью :-) enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...