vb help

Posted on 2011-03-23
Medium Priority
Last Modified: 2012-05-11
Please can you help me change the code on my worksheet?

I need to change the code that is linked to the userform:-

next_empty.Offset(, 14) = txt1
next_empty.Offset(, 15) = txt2

At the moment textbox txt1 & txt2 input there values into "Data" columns 14 & 15

I want the dates in txt1 & txt2 to go to "Dates" (Sheet3) Columns B & C

The trouble is that the first occurrence on Data sheet occurs at line 14, I then need txt1 & txt2 to input -12 in order for them to appear on line 2

The current line (21) would hopefully into txt1 & txt2 to lines 9 "Dates"

Many thanks for your help

Private Sub cmdPopulateRow_Click()
    Sheets("Data").Unprotect Sheets("DataSheet").Range("C27").Value
    Dim next_empty As Range
    '~~> Get next empty row
    If Sheets("Data").Range("B14") <> "" Then
        Set next_empty = Sheets("Data").Range("B13").End(xlDown).Offset(1)
        Set next_empty = Sheets("Data").Range("B14")
    End If
    'fill in details
    next_empty = txtrecieveddate
    next_empty.Offset(, 2) = TextBox3.Value
    next_empty.Offset(, 3) = ComboBox1
    next_empty.Offset(, 4) = txtCustomerusername
    next_empty.Offset(, 5) = txtcustomersname
    next_empty.Offset(, 6) = TextBox5
    next_empty.Offset(, 7) = ComboBox2
    next_empty.Offset(, 8) = ComboBox3
    next_empty.Offset(, 9) = txtstarteddate
    next_empty.Offset(, 10) = txtcompleteddate
    next_empty.Offset(, 11) = "Yes"
    next_empty.Offset(, 14) = txt1
    next_empty.Offset(, 15) = txt2
    Sheets("Data").Protect Sheets("DataSheet").Range("C27").Value
    Unload Me
End Sub

Open in new window

Question by:Gazza83
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
LVL 50

Expert Comment

by:Dave Brett
ID: 35203257

Can you pls post your file

For example I can't see how



Author Comment

ID: 35203298
Sorry Dave, my bad...forgot to upload the file.


LVL 50

Accepted Solution

Dave Brett earned 2000 total points
ID: 35203375
pls change

next_empty.Offset(, 14) = txt1
 next_empty.Offset(, 15) = txt2

to this



Sheets("Dates").Cells(next_empty.Row - 12, "B") = txt1
    Sheets("Dates").Cells(next_empty.Row - 12, "C") = txt2

Open in new window


Author Closing Comment

ID: 35203404
Thanks Dave, your code works perfectly as always.

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Freeze panes is an option within all variants of Excel to enable parts of a sheet to remain stationary when the cursor is in another part of the sheet. This is a very useful feature which is overlooked or under used.
After seeing numerous questions for Dynamic Data Validation I notice that most have used Visual Basic to solve the problem. This suggestion is purely formula based and can be used in multiple rows.
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question