Copying data from a MS Access form into Excel -


i have code takes fields ms access form , copies data saved excel file. first record in access in imported excel range of a2:i2. second record in access imported excel range of a3:i3, , on.... happens if close form in access , open up, , had 2 records imported same excel file, , want add third record, start on @ first row (a2:i2) , write on there. question how can i, if close , open access keep starting on over (a2:i2), , instead start @ next available row, follow example given (a4:i4)? code have

private sub command73_click() set objxlapp = createobject("excel.application") set objxlbook = objxlapp.workbooks.open("y:\123files\edmond\hotel reservation daily.xls") objxlapp.application.visible = true  objxlbook.activesheet  set r = .usedrange = r.rows.count + 1  .cells(i + 1, 1).value = me.guestfirstname & " " & guestlastname .cells(i + 1, 2).value = me.phonenumber .cells(i + 1, 3).value = me.cbocheckindate .cells(i + 1, 4).value = me.cbocheckoutdate .cells(i + 1, 5).value = me.guestno .cells(i + 1, 6).value = me.roomtype .cells(i + 1, 7).value = me.roomnumber .cells(i + 1, 8).value = date .cells(i + 1, 9).value = me.employee end  set r = nothing set objxlbook = nothing set objxlapp = nothing  end sub 

you can last used row:

set r = objxlbook.activesheet.usedrange = r.rows.count + 1 

some notes.

private sub command73_click() ''it idea put sensible names on command buttons. ''it may not seem of problem today, there dim objxlapp  object dim objxlbook  object dim r object dim integer  ''it best check whether excel open before  ''opening copy. set objxlapp = createobject("excel.application") set objxlbook = objxlapp.workbooks.open( _       "y:\123files\edmond\hotel reservation daily.xls") objxlapp.application.visible = true  ''it best specify sheet ''with objxlbook.activesheet  objxlbook.sheets("room reservation")      ''if used range includes empty rows      ''it may not suit     ''set r = .usedrange     ''i = r.rows.count + 1       ''from comments, appears data dense      ''but number of empty rows @ end of sheet       = .range("a1").end(xldown).row + 1      .cells(i, 1).value = me.guestfirstname & " " & guestlastname     .cells(i, 2).value = me.phonenumber     .cells(i, 3).value = me.cbocheckindate     .cells(i, 4).value = me.cbocheckoutdate     .cells(i, 5).value = me.guestno     .cells(i, 6).value = me.roomtype     .cells(i, 7).value = me.roomnumber     .cells(i, 8).value = date     .cells(i, 9).value = me.employee  end  ''tidy set objxlbook  = nothing set objxlapp = nothing  end sub 

you might @ transferspreadsheet.

another possibility use recordsetclone, data form, or recordset, matter. not give quite same control, fast:

dim objxlapp object dim objxlbook object dim r object dim integer dim rs dao.recordset  set objxlapp = createobject("excel.application") objxlapp.visible = true set objxlbook = objxlapp.workbooks.open( _       "y:\123files\edmond\hotel reservation daily.xls")  set rs = me.recordsetclone objxlbook.sheets("sheet1")      set r = .usedrange     = r.rows.count + 1      .cells(i, 1).copyfromrecordset rs  end 

Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -