Can't call macro from another

G

Guest

Hi All. I have the following code for a UserForm. It copies a list of dropped
golfers, goes to another part of the spreadsheet and finds the 1st empty cell
in the column, pastes it and then moves 1 cell to the right and enters the
date. All that works fine. The problem is that after it completes that it
doesn't go to macro "DropButtonContinue". It loops again. Can anyone tell me
what I am missing?

Private Sub DropButton_Click()
Range("DROPS").Select
Selection.Copy
strDrops = Range("TEAMDROPS").Value
Range(strDrops).Select
For DropsCounter = 1 To 100
If ActiveCell.Value = "" Then
Selection.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Date
DropButtonContinue
Else
ActiveCell.Offset(1, 0).Select
End If
Next DropsCounter
End Sub

Private Sub DropButtonContinue()
<<<More Code Here>>>

Thanks for any help.
 
G

Guest

Substitute the Cell references to the first row and column where the data is
to be pasted and try this.

Private Sub DropButton_Click()
With cells
Range("DROPS").Select
Selection.Copy
strDrops = Range("TEAMDROPS").Value
Range(strDrops).Select
set rng = .Range(.Cells(1,1),.cells(1,1)).End (xlDown)
rng.Offset(1,0).Activate
Activecell.PasteSpecial
End With

DropButtonContinue
End Sub
 
G

Guest

Jim - Thanks for helping me with my problem. Your suggested code called for
the range to be set starting in A1, and you told me to replace that with the
cell reference where the DROPS are to be pasted. Unfortunately, the value of
TEAMDROPS is the result of a formula based on a selection from a ComboBox and
changes each time the ComboBox is clicked. Therefore, the range referenced
changes also. Also, the first time TEAMDROPS is accessed (where ever it is)
it is empty. That was one of the reasons I was wrapping it all in an IF
statement. Any ideas on what to do now?
 
G

Guest

Does this do what you need?

Private Sub DropButton_Click()
With cells
Range("DROPS").Select
Selection.Copy
strDrops = Range("TEAMDROPS").Value
Range(strDrops).Select
If Activecell = "" then
Activecell.pastespecial
elseIf activecell.Offset(1,0) <> "" then
set rng = .Range(.Cells(1,1),.cells(1,1)).End (xlDown)
rng.Offset(1,0).Activate
Activecell.PasteSpecial
Else
Activecell.Offset(1,0).Activate
Activecell.pasteSpecial
end if
End With

DropButtonContinue
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top