Link to home
Start Free TrialLog in
Avatar of Gazza83
Gazza83

asked on

Vb help

Please can you help,

The attached code basically offloads the inputs from the userform onto the "Low Volume" Sheet.

I want to amend this line:-

next_empty.Offset(, 9) = txtstarteddate

So that apposed to inputting the value in Column K sheet4, it places the value in sheet1 Column B ("NewSheet")

Preferably it would start from B2, but should it be easier to keep the same line as that on the other sheet, that should also do.

Many thanks for your help!

Private Sub cmdPopulateRow_Click()
    Sheets("Low Volume").Unprotect Sheets("DataSheet").Range("B2").Value
    
    Dim next_empty As Range
    
    '~~> Get next empty row
    If Sheets("Low Volume").Range("B14") <> "" Then
        Set next_empty = Sheets("Low Volume").Range("B13").End(xlDown).Offset(1)
    Else
        Set next_empty = Sheets("Low Volume").Range("B14")
    End If
    
    'fill in details
    next_empty = txtrecieveddate
    next_empty.Offset(, 5) = txtcustomersname
    next_empty.Offset(, 4) = txtCustomerusername
    next_empty.Offset(, 6) = TextBox1
    next_empty.Offset(, 2) = TextBox3.Value
    next_empty.Offset(, 9) = txtstarteddate
    next_empty.Offset(, 21) = txtcompleteddate
    next_empty.Offset(, 3) = ComboBox1
    next_empty.Offset(, 7) = ComboBox2
    next_empty.Offset(, 8) = ComboBox3
    
    Sheets("Low Volume").Protect Sheets("DataSheet").Range("B2").Value
    
    Unload Me
End Sub

Open in new window

gary-test4.xls
Avatar of SiddharthRout
SiddharthRout
Flag of India image

Is this what you want?

Private Sub cmdPopulateRow_Click()
    Dim LastRow As Long
    Dim next_empty As Range
     
    LastRow = Sheets("Low Volume").Range("B" & Rows.Count).End(xlUp).Row + 1
    
    Sheets("Low Volume").Unprotect Sheets("DataSheet").Range("B2").Value
    
    '~~> Get next empty row
    If Sheets("Low Volume").Range("B14") <> "" Then
        Set next_empty = Sheets("Low Volume").Range("B13").End(xlDown).Offset(1)
    Else
        Set next_empty = Sheets("Low Volume").Range("B14")
    End If
    
    'fill in details
    next_empty = txtrecieveddate
    next_empty.Offset(, 5) = txtcustomersname
    next_empty.Offset(, 4) = txtCustomerusername
    next_empty.Offset(, 6) = TextBox1
    next_empty.Offset(, 2) = TextBox3.Value
    Sheets("NewSheet").Range("B" & LastRow) = txtstarteddate
    next_empty.Offset(, 21) = txtcompleteddate
    next_empty.Offset(, 3) = ComboBox1
    next_empty.Offset(, 7) = ComboBox2
    next_empty.Offset(, 8) = ComboBox3
    
    Sheets("Low Volume").Protect Sheets("DataSheet").Range("B2").Value
    
    Unload Me
End Sub

Open in new window


Sid
ASKER CERTIFIED SOLUTION
Avatar of SiddharthRout
SiddharthRout
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial