A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Excel » Charts and Charting
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

Shape Range



 
 
Thread Tools Display Modes
  #1  
Old April 21st, 2010, 08:23 PM posted to microsoft.public.excel.charting
kuhrty
external usenet poster
 
Posts: 6
Default Shape Range

Below is a subroutine that passes in 2 variables. I am concerned with
the word "Selection" used for ShapeRange and would prefer to eliminate
it. All my attemptes have resulted in errors. I want qualify the
code to prevent error.

Is selection a keyword for ShapeRange or is there a way to qualify it?

Thanks in advance.

Public Sub CountryColor(ByVal strCountry As String, _
ByVal dColor As Double)

Dim shtMap As Worksheet, rgData As Range, strShapeNum As String
Dim i As Integer, dColor1 As Double

Set shtMap =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Map")
Set rgData =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Data").Range("RegionCountryData")

On Error Resume Next
shtMap.Select

For i = 1 To rgData.Rows.Count

strShapeNum = rgData.Cells(i, 3).Value

shtMap.Shapes(strShapeNum).Select

'This is my issue"
With Selection.ShapeRange
.Fill.ForeColor.RGB = dColor
.Fill.Visible = msoTrue
.Fill.Solid
End With

Next i

End Sub
  #2  
Old April 21st, 2010, 09:37 PM posted to microsoft.public.excel.charting
Luke M[_4_]
external usenet poster
 
Posts: 451
Default Shape Range

'Does this not work?

With shtMap.Shapes(strShapeNum).ShapeRange
.Fill.ForeColor.RGB = dColor
.Fill.Visible = msoTrue
.Fill.Solid
End With

--
Best Regards,

Luke M
"kuhrty" wrote in message
...
Below is a subroutine that passes in 2 variables. I am concerned with
the word "Selection" used for ShapeRange and would prefer to eliminate
it. All my attemptes have resulted in errors. I want qualify the
code to prevent error.

Is selection a keyword for ShapeRange or is there a way to qualify it?

Thanks in advance.

Public Sub CountryColor(ByVal strCountry As String, _
ByVal dColor As Double)

Dim shtMap As Worksheet, rgData As Range, strShapeNum As String
Dim i As Integer, dColor1 As Double

Set shtMap =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Map")
Set rgData =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Data").Range("RegionCountryData")

On Error Resume Next
shtMap.Select

For i = 1 To rgData.Rows.Count

strShapeNum = rgData.Cells(i, 3).Value

shtMap.Shapes(strShapeNum).Select

'This is my issue"
With Selection.ShapeRange
.Fill.ForeColor.RGB = dColor
.Fill.Visible = msoTrue
.Fill.Solid
End With

Next i

End Sub



  #3  
Old April 22nd, 2010, 02:01 PM posted to microsoft.public.excel.charting
kuhrty
external usenet poster
 
Posts: 6
Default Shape Range

Luke,

Thank you for your input, when I attempt to qualify that way, the code
does run but the shapes don't fill with the color passed. I would
have assumed it is the correct way to code it but with an unexpected
result.

Thanks again for your response.

Mark

On Apr 21, 4:37*pm, "Luke M" wrote:
'Does this not work?

* * * * With shtMap.Shapes(strShapeNum).ShapeRange
* * * * * * .Fill.ForeColor.RGB = dColor
* * * * * * .Fill.Visible = msoTrue
* * * * * * .Fill.Solid
* * * * End With

--
Best Regards,

Luke M"kuhrty" wrote in message

...



Below is a subroutine that passes in 2 variables. *I am concerned with
the word "Selection" used for ShapeRange and would prefer to eliminate
it. *All my attemptes have resulted in errors. *I want qualify the
code to prevent error.


Is selection a keyword for ShapeRange or is there a way to qualify it?


Thanks in advance.


Public Sub CountryColor(ByVal strCountry As String, _
* * * * * * * * * * * *ByVal dColor As Double)


* *Dim shtMap As Worksheet, rgData As Range, strShapeNum As String
* *Dim i As Integer, dColor1 As Double


* *Set shtMap =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Map")
* *Set rgData =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Data").Range("RegionCount*ryData")


* *On Error Resume Next
* *shtMap.Select


* *For i = 1 To rgData.Rows.Count


* * * *strShapeNum = rgData.Cells(i, 3).Value


* * * *shtMap.Shapes(strShapeNum).Select


* * * 'This is my issue"
* * * *With Selection.ShapeRange
* * * * * *.Fill.ForeColor.RGB = dColor
* * * * * *.Fill.Visible = msoTrue
* * * * * *.Fill.Solid
* * * *End With


* *Next i


End Sub- Hide quoted text -


- Show quoted text -

  #4  
Old April 22nd, 2010, 05:12 PM posted to microsoft.public.excel.charting
Jon Peltier[_2_]
external usenet poster
 
Posts: 386
Default Shape Range

The next thing I would try is looping through the shapes in the shape
range, and apply the formatting to one shape at a time.

- Jon
-------
Jon Peltier
Peltier Technical Services, Inc.
http://peltiertech.com/


On 4/22/2010 9:01 AM, kuhrty wrote:
Luke,

Thank you for your input, when I attempt to qualify that way, the code
does run but the shapes don't fill with the color passed. I would
have assumed it is the correct way to code it but with an unexpected
result.

Thanks again for your response.

Mark

On Apr 21, 4:37 pm, "Luke wrote:
'Does this not work?

With shtMap.Shapes(strShapeNum).ShapeRange
.Fill.ForeColor.RGB = dColor
.Fill.Visible = msoTrue
.Fill.Solid
End With

--
Best Regards,

Luke wrote in message

...



Below is a subroutine that passes in 2 variables. I am concerned with
the word "Selection" used for ShapeRange and would prefer to eliminate
it. All my attemptes have resulted in errors. I want qualify the
code to prevent error.


Is selection a keyword for ShapeRange or is there a way to qualify it?


Thanks in advance.


Public Sub CountryColor(ByVal strCountry As String, _
ByVal dColor As Double)


Dim shtMap As Worksheet, rgData As Range, strShapeNum As String
Dim i As Integer, dColor1 As Double


Set shtMap =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Map")
Set rgData =
ThisWorkbook.Application.ThisWorkbook.Worksheets(" Data").Range("RegionCount*ryData")


On Error Resume Next
shtMap.Select


For i = 1 To rgData.Rows.Count


strShapeNum = rgData.Cells(i, 3).Value


shtMap.Shapes(strShapeNum).Select


'This is my issue"
With Selection.ShapeRange
.Fill.ForeColor.RGB = dColor
.Fill.Visible = msoTrue
.Fill.Solid
End With


Next i


End Sub- Hide quoted text -


- Show quoted text -

 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump


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


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 OfficeFrustration.
The comments are property of their posters.