Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 22
Default Calling Sub difficulty

Hello XLers

I'm quite new to Excel, and need some newbie help. Dave Peterson was very
helpful when I posed this a week ago, giving the code below. I arrived back
in town today, and I just can't get the second procedure to work.

Basically, my worksheet contains form buttons (actually 5). When clicked,
they will run Giselle that, in turn, calls Common.

MyQuestion: I keep getting error msgs at the Set lines. (Compile Error:
variable not defined. If I provide Dim statements, I still get Compile
Error: Object required.) I'm not even sure why I would need these lines???

Could someone show me how to get the 2nd procedure to work. (perhaps you
could even replace the " 'xxxxxxx common code goes here" line with a simple
task such as coloring the cells of R1 red and printing the text in R2 in
cell A1)

Dave's excellent code!

Option Explicit
Sub Giselle()
Dim R1 as String
Dim R2 as string

R1 = ""
R2 = ""

Select Case lcase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
End Select

If R1 = "" then
beep
msgbox "Design error. See Giselle!
exit sub
End if

call Common(R1,R2)
End Sub


Sub Common(R1 as String, R2 as String)

with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn = .Range(R1)
Set StringToWorkOn = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub



THANKYOU very much for any assistance
Giselle



  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 104
Default Calling Sub difficulty

Hi Giselle,
You need to declare two Range variable to to Set them. Also you each
Range variable must have it' own individual name. I 've made changes to your
Subroutine Commom() (See code below)
Good Luck...

Rick


Sub Common(R1 as String, R2 as String)
Dim RangeToWorkOn_1 as Range
Dim RangeToWorkOn_2 as Range


with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn_1 = .Range(R1)
Set StringToWorkOn_2 = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub




"Giselle" wrote in message
...
Hello XLers

I'm quite new to Excel, and need some newbie help. Dave Peterson was very
helpful when I posed this a week ago, giving the code below. I arrived

back
in town today, and I just can't get the second procedure to work.

Basically, my worksheet contains form buttons (actually 5). When clicked,
they will run Giselle that, in turn, calls Common.

MyQuestion: I keep getting error msgs at the Set lines. (Compile Error:
variable not defined. If I provide Dim statements, I still get Compile
Error: Object required.) I'm not even sure why I would need these

lines???

Could someone show me how to get the 2nd procedure to work. (perhaps you
could even replace the " 'xxxxxxx common code goes here" line with a

simple
task such as coloring the cells of R1 red and printing the text in R2 in
cell A1)

Dave's excellent code!

Option Explicit
Sub Giselle()
Dim R1 as String
Dim R2 as string

R1 = ""
R2 = ""

Select Case lcase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
End Select

If R1 = "" then
beep
msgbox "Design error. See Giselle!
exit sub
End if

call Common(R1,R2)
End Sub


Sub Common(R1 as String, R2 as String)

with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn = .Range(R1)
Set StringToWorkOn = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub



THANKYOU very much for any assistance
Giselle





  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 29
Default Calling Sub difficulty

hello again

I can't get the code to work. (keep getting error 1004 on the second Set
statement.) Also, as a newcomer to XL, I need just a bit more help on
syntax using these range variables, RangeToWorkOn_1 and
StringToWorkOn_2. ( Perhaps some coder out there could replace the "
'xxxxxxx common code goes here" line with a simple task such as coloring the
cells of R1 red and printing the text in R2 in cell A1.) I'd ge really
greatful for help with this syntax.


Option Explicit
Sub Giselle()
Dim R1 As String
Dim R2 As String

R1 = ""
R2 = ""

Select Case LCase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
End Select

If R1 = "" Then
Beep
MsgBox "Design error. See Giselle!"
Exit Sub
End If

Call Common(R1, R2)
End Sub


Sub Common(R1 As String, R2 As String)

Dim RangeToWorkOn_1 As Range
Dim StringToWorkOn_2 As Range

With Worksheets("Sheet1") 'or Activesheet ????
Set RangeToWorkOn_1 = .Range(R1)
Set StringToWorkOn_2 = .Range(R2)
End With

'xxxxxxxx common code goes in here

End Sub



"Rick Hansen" wrote in message
...
Hi Giselle,
You need to declare two Range variable to to Set them. Also you each
Range variable must have it' own individual name. I 've made changes to
your
Subroutine Commom() (See code below)
Good Luck...

Rick


Sub Common(R1 as String, R2 as String)
Dim RangeToWorkOn_1 as Range
Dim RangeToWorkOn_2 as Range


with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn_1 = .Range(R1)
Set StringToWorkOn_2 = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub




"Giselle" wrote in message
...
Hello XLers

I'm quite new to Excel, and need some newbie help. Dave Peterson was
very
helpful when I posed this a week ago, giving the code below. I arrived

back
in town today, and I just can't get the second procedure to work.

Basically, my worksheet contains form buttons (actually 5). When
clicked,
they will run Giselle that, in turn, calls Common.

MyQuestion: I keep getting error msgs at the Set lines. (Compile
Error:
variable not defined. If I provide Dim statements, I still get Compile
Error: Object required.) I'm not even sure why I would need these

lines???

Could someone show me how to get the 2nd procedure to work. (perhaps you
could even replace the " 'xxxxxxx common code goes here" line with a

simple
task such as coloring the cells of R1 red and printing the text in R2 in
cell A1)

Dave's excellent code!

Option Explicit
Sub Giselle()
Dim R1 as String
Dim R2 as string

R1 = ""
R2 = ""

Select Case lcase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
End Select

If R1 = "" then
beep
msgbox "Design error. See Giselle!
exit sub
End if

call Common(R1,R2)
End Sub


Sub Common(R1 as String, R2 as String)

with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn = .Range(R1)
Set StringToWorkOn = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub



THANKYOU very much for any assistance
Giselle







  #4   Report Post  
Posted to microsoft.public.excel.programming
JMB JMB is offline
external usenet poster
 
Posts: 2,062
Default Calling Sub difficulty

Set StringToWorkOn_2 = .Range(R2)

It looks like R2 will equal either "Ford" or "Chrysler". Are these named
ranges or are these values you are looking for? If they are not named ranges
on Sheet1, but rather values you are looking for, change StringToWorkOn_2 to
a string variable

Dim StringToWorkOn_2 As String

and change the Set statement

StringToWorkOn_2 = R2




"Bri" wrote:

hello again

I can't get the code to work. (keep getting error 1004 on the second Set
statement.) Also, as a newcomer to XL, I need just a bit more help on
syntax using these range variables, RangeToWorkOn_1 and
StringToWorkOn_2. ( Perhaps some coder out there could replace the "
'xxxxxxx common code goes here" line with a simple task such as coloring the
cells of R1 red and printing the text in R2 in cell A1.) I'd ge really
greatful for help with this syntax.


Option Explicit
Sub Giselle()
Dim R1 As String
Dim R2 As String

R1 = ""
R2 = ""

Select Case LCase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
End Select

If R1 = "" Then
Beep
MsgBox "Design error. See Giselle!"
Exit Sub
End If

Call Common(R1, R2)
End Sub


Sub Common(R1 As String, R2 As String)

Dim RangeToWorkOn_1 As Range
Dim StringToWorkOn_2 As Range

With Worksheets("Sheet1") 'or Activesheet ????
Set RangeToWorkOn_1 = .Range(R1)
Set StringToWorkOn_2 = .Range(R2)
End With

'xxxxxxxx common code goes in here

End Sub



"Rick Hansen" wrote in message
...
Hi Giselle,
You need to declare two Range variable to to Set them. Also you each
Range variable must have it' own individual name. I 've made changes to
your
Subroutine Commom() (See code below)
Good Luck...

Rick


Sub Common(R1 as String, R2 as String)
Dim RangeToWorkOn_1 as Range
Dim RangeToWorkOn_2 as Range


with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn_1 = .Range(R1)
Set StringToWorkOn_2 = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub




"Giselle" wrote in message
...
Hello XLers

I'm quite new to Excel, and need some newbie help. Dave Peterson was
very
helpful when I posed this a week ago, giving the code below. I arrived

back
in town today, and I just can't get the second procedure to work.

Basically, my worksheet contains form buttons (actually 5). When
clicked,
they will run Giselle that, in turn, calls Common.

MyQuestion: I keep getting error msgs at the Set lines. (Compile
Error:
variable not defined. If I provide Dim statements, I still get Compile
Error: Object required.) I'm not even sure why I would need these

lines???

Could someone show me how to get the 2nd procedure to work. (perhaps you
could even replace the " 'xxxxxxx common code goes here" line with a

simple
task such as coloring the cells of R1 red and printing the text in R2 in
cell A1)

Dave's excellent code!

Option Explicit
Sub Giselle()
Dim R1 as String
Dim R2 as string

R1 = ""
R2 = ""

Select Case lcase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
End Select

If R1 = "" then
beep
msgbox "Design error. See Giselle!
exit sub
End if

call Common(R1,R2)
End Sub


Sub Common(R1 as String, R2 as String)

with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn = .Range(R1)
Set StringToWorkOn = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub



THANKYOU very much for any assistance
Giselle








  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Calling Sub difficulty

There was a typo in that "excellent" code.

From the original thread:

Option Explicit
Sub Giselle()
Dim R1 as String
dim R2 as string
dim R3 as string

R1 = ""
R2 = ""
R3 = ""

Select Case lcase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
R3 = "O:P"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
R3 = "U:V" '<--changed
End Select

if r1 = "" then
beep
msgbox "Design error. See Giselle!
exit sub
end if

call Common(r1,r2,r3)

End Sub

Sub Common(R1 as String, R2 as String,R3 as String)

Dim FirstRangeToWorkOn As Range
Dim StringToWorkOn as string
dim SecondRangeToWorkOn as range

with worksheets("Sheet99") 'or Activesheet ????
Set FirstRangeToWorkOn = .Range(R1)
StringToWorkOn = R2
Set SecondRangeToWorkOn = .Range(R3)
end with
.....

End Sub

I'm not sure if this adds anything to the corrections you've already gotten, but
it makes me feel better that it's fixed. <vbg.

Giselle wrote:

Hello XLers

I'm quite new to Excel, and need some newbie help. Dave Peterson was very
helpful when I posed this a week ago, giving the code below. I arrived back
in town today, and I just can't get the second procedure to work.

Basically, my worksheet contains form buttons (actually 5). When clicked,
they will run Giselle that, in turn, calls Common.

MyQuestion: I keep getting error msgs at the Set lines. (Compile Error:
variable not defined. If I provide Dim statements, I still get Compile
Error: Object required.) I'm not even sure why I would need these lines???

Could someone show me how to get the 2nd procedure to work. (perhaps you
could even replace the " 'xxxxxxx common code goes here" line with a simple
task such as coloring the cells of R1 red and printing the text in R2 in
cell A1)

Dave's excellent code!

Option Explicit
Sub Giselle()
Dim R1 as String
Dim R2 as string

R1 = ""
R2 = ""

Select Case lcase(Application.Caller)
Case "button 1"
R1 = "D5:J25"
R2 = "Ford"
Case "button 2"
R1 = "J5:K25"
R2 = "Chrysler"
End Select

If R1 = "" then
beep
msgbox "Design error. See Giselle!
exit sub
End if

call Common(R1,R2)
End Sub

Sub Common(R1 as String, R2 as String)

with worksheets("Sheet99") 'or Activesheet ????
Set RangeToWorkOn = .Range(R1)
Set StringToWorkOn = .Range(R2)
end with

'xxxxxxxx common code goes in here

End Sub

THANKYOU very much for any assistance
Giselle


--

Dave Peterson


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 22
Default Calling Sub difficulty

All's well now. Thank you
Giselle


Reply
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
Function Difficulty Johnnie[_2_] Excel Discussion (Misc queries) 5 October 20th 08 09:54 PM
Formula difficulty Pyrite Excel Discussion (Misc queries) 5 October 8th 08 08:13 PM
VLOOKUP Difficulty Serge Excel Discussion (Misc queries) 5 June 21st 06 02:50 AM
Difficulty with MOD operator when using Mod 1 Terry Holmes Excel Programming 5 April 27th 05 09:52 PM
difficulty with logical - if - and billabong Excel Programming 5 September 20th 03 10:55 PM


All times are GMT +1. The time now is 11:21 AM.

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"