LinkBack Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #10   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 3,365
Default Write data back from a form to sheet

Glad that it is all working for you now.

In cases like this, it's better for you in the long run to take the small
amount of overhead time added to call a routine than to duplicate the code in
multiple locations. This way if you need to change the way that process
works, or (heaven forbid actually fix a bug), then you only need to do it in
one place rather than trying to remember every location in the code that
performs that process.


"Steen" wrote:

Hi JLatham

Thanks for all your help - I have it all working now - great. :-)

Use the idee to make a separate routine.

/Steen

"JLatham" wrote:

Not sure how you're building it now. You could either add the code
immediately to the end of your 'Next'/'Previous' buttons (better to write a
separate routine and just call it from both. And set up your list where ever
it goes - I'm not clear where your list is coming from, or where you want it
to appear.

"Steen" wrote:

Hi JLatham

Great - I can now step up and down my list. :-)

The only thing missing is display of the new row data in the form. I have
made the initialisation in the Tasklist sheet when dubbelclikking. How do I
make this happen when pressing the Next/Back button?

Private Sub cmdNext_Click()
On Error Resume Next ' ignore error for the moment
ActiveCell.Offset(1, 0).Activate
If Err < 0 Then
Err.Clear ' trash the error
End If
On Error GoTo 0 ' resume normal error trapping
End Sub

/Steen
"JLatham" wrote:

ActiveCell.Offset(1,0).Activate ' move down 1 row
ActiveCell.Offset(-1,0).Activate ' move up 1 row

You have to make sure you don't 'bump' the cieling or floor - that is, you
can encounter an error if you are on Row 1 and try to move to "previous" or
up 1 row, since there is no row 0, same if you're at last row and trying to
move to "next.

Easy handling this way:

On Error Resume Next ' ignore error for the moment
ActiveCell.Offset(1,0).Activate ' or the (-1,0).Activate statement
If Err<0 Then
Err.Clear ' trash the error
End If
On Error Goto 0 ' resume normal error trapping

"Steen" wrote:

Hi again

Implemented - works nice :-)

Is there a simple way to get a pre/next button to work.

Next: ActiveCell.Row = ActiveCell.Row + 1 ?

/Steen

"JLatham" wrote:

Depends on how you're doing your double-click. If you are double-clicking on
any cell in the row you need the data to go back to, then the ActiveCell will
be on the active row, and ActiveCell.Row will give you the row number.
Since you can only double-click in a single cell, there's not much chance of
error.

In effect Target in the double-click processor is the ActiveCell, so when
you get the form open, ActiveCell is your guy!

"Steen" wrote:

Hi JLatham

Thanks for the quick answer. What I need is to be able to write data back to
the same row as has been used to activate the Form by dubble_click, but each
data in a specific coloum. It's the "active' Row i can't figure out how to
get...

Can you help me out here?

/Steen

"JLatham" wrote:

for the write-back, try

ActiveCell.Value = Me.cboPriority.Value

If the cell you need to write back to is not the active (selected) cell,
then be more explicit:
Worksheets("Sheet1").Range("A1").Value = Me.cboPriority.Value
naturally, change the name of the worksheet and cell address as required.

Hope this helps.

"Steen" wrote:

Hi again (have been posted in Excel Programming also - sorry)

I would like to know how to write back the data from a form upon accept. The
form is activatied from a dubble_click on sheet2 (Tasklist), but I can't
figure out how to write the data back the the same row .

I would also appriciate some help on how to make a "next/previus" button work.

I have simplified the code below to be more illustrative:

Sheet2(Tasklist):

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Row 4 Then
Select Case Target.Column
Case 1
'initialize Tasklist form
frmTaskList.cboPriority.Value = Target.Offset(0, 7)
frmTaskList.txtHeadLine.Value = Target.Offset(0, 8)

'Call Tasklist form
frmTaskList.Show
End Select
End If
End Sub

Forms: frmTasklist:

Private Sub cmdAccept_Click()
If Me.cboPriority.Value = "" Then
MsgBox "Please enter Priority 1, 2 or 3 with 1 critical priority.",
vbExclamation, "Task Values"
Me.cboPriority.SetFocus
Exit Sub
End If

'write data back to sheet tasklist in the correct row?
???

End Sub

Hope fore some help again :-)

/Steen




 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
How can I write 3/5 in a cell and have it look like 03-May back? Janneman Excel Discussion (Misc queries) 4 May 28th 08 01:23 PM
write formula that icludes data from sheet 1 to sheet 2 of my spr john Excel Worksheet Functions 1 September 14th 07 03:22 AM
File in 2007 form - need to get back to 2003 form... RHM Excel Discussion (Misc queries) 2 May 7th 07 05:38 AM
how to get a data form to fill you own exel sheet (was data-form erik van buijtenen Excel Worksheet Functions 2 May 30th 06 05:31 PM
is it possible to execute write to the fields in another .xsl form a macro in another .xsl? e.g. some way to load another .xsl into an .xsl macro and write to its data? Daniel Excel Worksheet Functions 1 June 23rd 05 11:38 PM


All times are GMT +1. The time now is 03:52 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"