|
-
Jun 10th, 2009, 04:09 AM
#1
Thread Starter
Don't Panic!
[Excel 2003] .Location of a chart
Hiya,
Does anyone know if there is a limit on the size of the tab name when trying to put a chart into a sheet. I have a sheet with 31 chars name, and it errors with invalid call/function. When I rename the sheet to 26 chars long, it runs fine...
Edit:
From Excel HElp:
Location Method
See AlsoApplies ToExampleSpecificsMoves the chart to a new location. Chart object.
expression.Location(Where, Name)
expression Required. An expression that returns one of the objects in the Applies To list.
Where Required XlChartLocation. Where to move the chart.
XlChartLocation can be one of these XlChartLocation constants.
xlLocationAsNewSheet
xlLocationAsObject
xlLocationAutomatic
Name Optional Variant; required if Where is xlLocationAsObject. The name of the sheet where the chart will be embedded if Where is xlLocationAsObject or the name of the new sheet if Where is xlLocationAsNewSheet.
Example
This example moves the embedded chart to a new chart sheet named "Monthly Sales."
Worksheets(1).ChartObjects(1).Chart _
.Location xlLocationAsNewSheet, "Monthly Sales"
no mention of a naming limit...
Feeling like a fly on the inside of a closed window (Thunk!)
If I post a lot, it is because I am bored at work! ;D Or stuck...
* Anything I post can be only my opinion. Advice etc is up to you to persue...
-
Jun 10th, 2009, 09:29 AM
#2
Re: [Excel 2003] .Location of a chart
31 is correct
Can I see the exact code that you are trying to use?
A good exercise for the Heart is to bend down and help another up...
Please Mark your Thread " Resolved", if the query is solved
MyGear:
★ CPU ★ Ryzen 5 5800X
★ GPU ★ NVIDIA GeForce RTX 3080 TI Founder Edition
★ RAM ★ G. Skill Trident Z RGB 32GB 3600MHz
★ MB ★ ASUS TUF GAMING X570 (WI-FI) ATX Gaming
★ Storage ★ SSD SB-ROCKET-1TB + SEAGATE 2TB Barracuda IHD
★ Cooling ★ NOCTUA NH-D15 CHROMAX BLACK 140mm + 10 of Noctua NF-F12 PWM
★ PSU ★ ANTEC HCG-1000-EXTREME 1000 Watt 80 Plus Gold Fully Modular PSU
★ Case ★ LIAN LI PC-O11 DYNAMIC XL ROG (BLACK) (G99.O11DXL-X)
★ Monitor ★ LG Ultragear 27" 240Hz Gaming Monitor
★ Keyboard ★ TVS Electronics Gold Keyboard
★ Mouse ★ Logitech G502 Hero
-
Jun 11th, 2009, 04:46 AM
#3
Thread Starter
Don't Panic!
Re: [Excel 2003] .Location of a chart
Code:
Set cht = objExcel.Charts.Add
With cht
.ChartType = IIf(blnLines, 65, 51) 'xlLineMarkers,xlColumnClustered
.SetSourceData Source:=sht.Range(sht.cells(lngStartRow, 1), sht.cells(lngRowOP, lngMaxCol + 1)), PlotBy:=1 'xlRows
If .SeriesCollection.Count > 1 Then
.SeriesCollection(1).Delete
End If 'since the days are numbers it considers it data hence adds a line - the code above removes that series...
Set rng = sht.Range(sht.cells(lngStartRow, 2), sht.cells(lngStartRow, lngMaxCol + 1))
For lngLoop = 1 To cht.SeriesCollection.Count
.SeriesCollection(lngLoop).XValues = "='" & sht.Name & "'!" & rng.Address(referencestyle:=-4150) 'xlr1c1
Next
.HasTitle = True
.ChartTitle.Characters.Text = strBrand & " - Daily " & strTitle & " (from " & IIf(blnUseLastUpdated, "last updated", "created") & ")"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Date"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Number of " & strYAxis
.HasLegend = True
.Legend.Position = IIf(blnLegendBottom, -4107, xlRight) 'xlbottom
.HasDataTable = False
'---- last thing - change the chart to an object!
.Location WHERE:=2, Name:=sht.Name 'xlLocationAsObject
End With
Something like that above
Name of the sheet shouldn't matter, just that it was 31 chars...
Feeling like a fly on the inside of a closed window (Thunk!)
If I post a lot, it is because I am bored at work! ;D Or stuck...
* Anything I post can be only my opinion. Advice etc is up to you to persue...
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|