Solved

Chart question using xl3DColumn constant.

Posted on 2007-03-26
5
688 Views
Last Modified: 2008-02-01
Hello group,

In the following code; during runtime whenever I choose the third item from the
array (ar_ChartFormat(3) = xl3DColumn) and I look at the log file I can see "type : -4100" but the rest of the options are logged as normal values such as 51,53 and ... In fact, this causes mismatch type for the generated chart.

I'm using same constant value but on this specific item I'm having problem! What is the problem here?

Code:



    ar_ChartFormat(1) = xlColumnClustered
    ar_ChartFormat(2) = xl3DColumnClustered
    ar_ChartFormat(3) = xl3DColumn
    ar_ChartFormat(4) = xlColumnStacked
    ar_ChartFormat(5) = xl3DColumnStacked
    ar_ChartFormat(6) = xlColumnStacked100
    ar_ChartFormat(7) = xl3DColumnStacked100
   
    ar_ChartFormat(8) = xlLine
    ar_ChartFormat(9) = xlLineMarkers
    ar_ChartFormat(10) = xl3DLine
    ar_ChartFormat(11) = xlLineStacked
    ar_ChartFormat(12) = xlLineMarkersStacked
    ar_ChartFormat(13) = xlLineStacked100
    ar_ChartFormat(14) = xlLineMarkersStacked100
   
    ar_ChartFormat(15) = xlPie
    ar_ChartFormat(16) = xlPieExploded
    ar_ChartFormat(17) = xl3DPie
    ar_ChartFormat(18) = xl3DPieExploded
    ar_ChartFormat(19) = xlPieOfPie
    ar_ChartFormat(20) = xlBarOfPie
   
   
    With ActiveSheet.ChartObjects.Add(Left:=100, Width:=375, Top:=75, Height:=225)
   
        .Chart.SetSourceData Source:=ActiveSheet.Range(strSelectedRange)
       
        LogInformation ("type: " & CStr(ar_ChartFormat(CInt(tvCtrlChartType.SelectedItem.Index - 3))))
       
        .Chart.ChartType = ar_ChartFormat(CInt(tvCtrlChartType.SelectedItem.Index - 3))

       
    End With

regards,
ak
0
Comment
Question by:akohan
  • 2
  • 2
5 Comments
 

Author Comment

by:akohan
Comment Utility

Ok. I found the cause. After a chart is created on worksheet it is selected by default.  If I try to create a new one since the previous chart is still active or selected will cause "type mismatch" error!

So what I did was calling Deselect method. Now the new problem is that the compiler doesn't like this statement:

                   ActiveChart.Deselect

and causes another error message: "Object Varialbe or With block variable not set"

What should I do now?!

thanks,
ak
0
 
LVL 85

Expert Comment

by:Rory Archibald
Comment Utility
That would imply that you do not have a chart activated.
0
 

Author Comment

by:akohan
Comment Utility

Would you please explain what you mean?

As far as I know DSELECT method belongs to Chart class. So it shouldn't cause a problem.

Also as soon as a chart is plotted or created, I can see that it is selected (at least by seeing the frame around it and small boxes on each side).

regards,
ak

0
 
LVL 85

Accepted Solution

by:
Rory Archibald earned 250 total points
Comment Utility
Deselect does belong to the chart class, but if there is no chart active, then you will get that message if you use Activechart. Running your code does not, at least in Excel 2002, result in the new chart being active, so you will get that error.
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

The new Microsoft OS looks great, is easier than ever to upgrade to, it is even free.  So what's the catch?  If you don't change the privacy settings, Microsoft will, in accordance with the (EULA) you clicked okay to without reading, collect all the…
Recently Microsoft released a brand new function called CONCAT. It's supposed to replace its predecessor CONCATENATE. But how does it work? And what's new? In this article, we take a closer look at all of this - we even included an exercise file for…
This Micro Tutorial will demonstrate how to use longer labels with horizontal bar charts instead of the vertical column chart.
This Micro Tutorial will demonstrate how to use a scrolling table in Microsoft Excel using the INDEX function.

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now