ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Selct and edit sheet (https://www.excelbanter.com/excel-discussion-misc-queries/104846-selct-edit-sheet.html)

NNothard

Selct and edit sheet
 

I am a bit confused about this as I have never had this happen befo

I have a command button on sheet 1 which is basically for validation of
two fields of data.
Once the validation check gets through I want to copy the two fields
into Sheet 2. But in my code I am selecting sheet 2 but once there and
changes I try to make are happening in sheet 1!!

here is the code:

Private Sub Register_Click()

Dim SName As String
Dim Username As String
Dim Session As String

Dim MyTime
MyTime = Time

If MyTime < "12:00:00" Then
Session = "Morning"
ElseIf MyTime < "17:00:00" Then
Session = "Afternoon"
ElseIf MyTime < "23:59:59" Then
Session = "Evening"
Else
End If


SName = Range("f9")
Username = Range("f11")

If SName = "" Then
MsgBox "Please enter your Surname"
ElseIf Username = "" Then
MsgBox "Please enter your username"
Else

Sheets("Data").Select ' HERE I SELECT THE SHEET I WANT TO COPY TO

Range("a2") = SName ' THIS APPEARS IN SHEET 1 !!!
Range("b2") = Username ' THIS ALSO APPEARS IN SHEET 1 !!!!


End If


Do I need to make the second sheet active before I can copy the data?


--
NNothard
------------------------------------------------------------------------
NNothard's Profile: http://www.excelforum.com/member.php...o&userid=35791
View this thread: http://www.excelforum.com/showthread...hreadid=571431


Dave Peterson

Selct and edit sheet
 
You have unqualified ranges in your code.

If you use this kind of code in a general module:
Range("a2") = SName
then that A2 will refer to the activesheet.

But if you use that same line of code behind a worksheet, that range will refer
to the worksheet that owns the code.

But if you qualify the range:

Worksheets("data").Range("a2") = SName
worksheets("data").Range("b2") = Username

You'll be fine--since you qualified that range to belong to worksheets("data").

And you'll notice that you can drop the .select statement, too. You can just
drop this line:

Sheets("Data").Select





NNothard wrote:

I am a bit confused about this as I have never had this happen befo

I have a command button on sheet 1 which is basically for validation of
two fields of data.
Once the validation check gets through I want to copy the two fields
into Sheet 2. But in my code I am selecting sheet 2 but once there and
changes I try to make are happening in sheet 1!!

here is the code:

Private Sub Register_Click()

Dim SName As String
Dim Username As String
Dim Session As String

Dim MyTime
MyTime = Time

If MyTime < "12:00:00" Then
Session = "Morning"
ElseIf MyTime < "17:00:00" Then
Session = "Afternoon"
ElseIf MyTime < "23:59:59" Then
Session = "Evening"
Else
End If

SName = Range("f9")
Username = Range("f11")

If SName = "" Then
MsgBox "Please enter your Surname"
ElseIf Username = "" Then
MsgBox "Please enter your username"
Else

Sheets("Data").Select ' HERE I SELECT THE SHEET I WANT TO COPY TO

Range("a2") = SName ' THIS APPEARS IN SHEET 1 !!!
Range("b2") = Username ' THIS ALSO APPEARS IN SHEET 1 !!!!

End If

Do I need to make the second sheet active before I can copy the data?

--
NNothard
------------------------------------------------------------------------
NNothard's Profile: http://www.excelforum.com/member.php...o&userid=35791
View this thread: http://www.excelforum.com/showthread...hreadid=571431


--

Dave Peterson

NNothard

Selct and edit sheet
 

Thank-you

It is working now.


--
NNothard
------------------------------------------------------------------------
NNothard's Profile: http://www.excelforum.com/member.php...o&userid=35791
View this thread: http://www.excelforum.com/showthread...hreadid=571431



All times are GMT +1. The time now is 07:58 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com