MrExcel Message Board

Go Back   MrExcel Message Board > Question Forums > Excel Questions

Excel Questions All Excel/VBA questions - formulas, macros, pivot tables, general help, etc. Please post to this forum in English only.

Reply
 
Thread Tools Display Modes
Old May 21st, 2002, 05:37 AM   #1
drag-driver
Board Regular
 
Join Date: Feb 2002
Posts: 91
Default

I need to create a macro which can update a graph with the last entered data on a data sheet, does anyone have any clue how to do this. So far i have the vb code which selects an exact row for my extra graph line but i want it to select the last entered data row,so that i can then run the macro and it will update the graphs accuratly. I as such need to change the referance in the below data range to a floating referance which always selects the last entered data on the required sheet.

Sheets("DSQ401").Select
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(2).XValues = "='DSQ401 -- Data'!R1C4:R1C26"
ActiveChart.SeriesCollection(2).Values = "='DSQ401 -- Data'!R138C4:R138C26"
ActiveChart.SeriesCollection(2).Name = "='DSQ401 -- Data'!R138C3"
ActiveWindow.Visible = False
Windows("PO_Flare 2.xls").Activate
Sheets("raw data").Select


drag-driver is offline   Reply With Quote
Old May 21st, 2002, 06:05 AM   #2
Ian Mac
MrExcel MVP
 
Join Date: Feb 2002
Location: Newcastle, UK
Posts: 1,174
Default

Quote:
On 2002-05-21 04:37, drag-driver wrote:
I need to create a macro which can update a graph with the last entered data on a data sheet, does anyone have any clue how to do this. So far i have the vb code which selects an exact row for my extra graph line but i want it to select the last entered data row,so that i can then run the macro and it will update the graphs accuratly. I as such need to change the referance in the below data range to a floating referance which always selects the last entered data on the required sheet.

Sheets("DSQ401").Select
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(2).XValues = "='DSQ401 -- Data'!R1C4:R1C26"
ActiveChart.SeriesCollection(2).Values = "='DSQ401 -- Data'!R138C4:R138C26"
ActiveChart.SeriesCollection(2).Name = "='DSQ401 -- Data'!R138C3"
ActiveWindow.Visible = False
Windows("PO_Flare 2.xls").Activate
Sheets("raw data").Select


You can do this just on the worksheet.

I assuming you need the Dynamically change the X Axis and Lables.

set up a Dynamic Named Range.

Goto Insert>Names>Define, type something like DataLables in the top box.
In refers to type
=OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),1)

Change the Sheet cell Ref's if needed, also change to:

=OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1!$A:$A)-1,1)

if you need to start in row 2.

Click Add.

Do the Same for DataValues

Changing;

=OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),1)
to
=OFFSET(Sheet1!$B$1,0,0,COUNTA(Sheet1!$A:$A),1).

Now goto the chart wizard.

Select the chart you need.

Goto the Series Tab:

To use the Dynamic Range you need to include the Name of the workbook, so in Values put:

=YourBook.xls!DataValues

and

=YourBook.xls!DataLables

you should now have a dynamic chart.

I probably need to explain further, if you need it just ask.
__________________
"Have a good time......all the time"
Ian Mac
Ian Mac is offline   Reply With Quote
Old May 21st, 2002, 07:23 AM   #3
drag-driver
Board Regular
 
Join Date: Feb 2002
Posts: 91
Default

The solution you give is not the one i need, i understand how it works but what i need is a macro which adds a new series to the data not adjusts the series already present.It is tricky to explain.
1. I have a graph which contains a number of series named WW1 to WW5, Each WW# contains x and y data, this results in a graph which allows you to compare ww results with each other.(note the x and y data are stored in rows not colums). X does not change from WW to WW

2. Each week the raw data for which contains the y data is added to the sheets. I curently manualy go to the graph select add series and select the required y and required ww# add to the graph. The required y values are the last entry in the raw data sheets.

3. Since i have about 30 graphs to update i want this process to be automated, and my code above automates everything but i need to set it up such that it selects the last entry for y each time its ran.

4. note it must store the result such that the following week when the macro is ran the previouis data is not erased.

PLease let us know if this is possible or not
cos i dont want to be wasting your time or mine,

Thanks for the help,

Thomas
drag-driver is offline   Reply With Quote
Old May 21st, 2002, 07:44 AM   #4
Ian Mac
MrExcel MVP
 
Join Date: Feb 2002
Location: Newcastle, UK
Posts: 1,174
Default

Quote:
On 2002-05-21 06:23, drag-driver wrote:
The solution you give is not the one i need, i understand how it works but what i need is a macro which adds a new series to the data not adjusts the series already present.It is tricky to explain.
1. I have a graph which contains a number of series named WW1 to WW5, Each WW# contains x and y data, this results in a graph which allows you to compare ww results with each other.(note the x and y data are stored in rows not colums). X does not change from WW to WW

2. Each week the raw data for which contains the y data is added to the sheets. I curently manualy go to the graph select add series and select the required y and required ww# add to the graph. The required y values are the last entry in the raw data sheets.

3. Since i have about 30 graphs to update i want this process to be automated, and my code above automates everything but i need to set it up such that it selects the last entry for y each time its ran.

4. note it must store the result such that the following week when the macro is ran the previouis data is not erased.

PLease let us know if this is possible or not
cos i dont want to be wasting your time or mine,

Thanks for the help,

Thomas
Sorry, now I understand, this may be one I'm out of my depth with, but as I see it (I could be very wrong (it wouldn't be the 10th time ))

you need to make:

ActiveChart.SeriesCollection(2).Values = "='DSQ401 -- Data'!R138C4:R138C26"

reference the last row if there indeed is one.
__________________
"Have a good time......all the time"
Ian Mac
Ian Mac is offline   Reply With Quote
Reply

Bookmarks

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

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -4. The time now is 10:48 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
All contents Copyright 1998-2012 by MrExcel Consulting.
diabetic desserts recipes recipes Diabetic Soups Holiday Pizza Recipes Popcorn Recipes Recipes For Microwave Pasta Recipes Casserole Recipes Chili Recipes Curry Recipes Crockpot Recipes Apples Recipes Bread Recipes Vegetarian Recipes Vegetable recipes Desserts Recipes Appetizers Ethnic Recipes Meat Dishes Barbecue Recipes Sauces Recipes Marinade Recipes Low Fat Recipes Frugal Gourmet Kitchen Classics Recipes On The Grill Cook Books Seafood Recipes Cajun Recipes Breads Low Fat Low Fat Breads Bread Machine Recipes Yeast Breads Quick Breads Fat Free Vegetarian Salad Recipes Eggplant Recipes Radish Recipes Tomato Recipes Jalapeno Recipes Potato Recipes Lettuce Recipes Cabbage Recipes Beans Ambrosia Recipes Biscotti Recipes Desserts Low Fat Cookie Recipes Cheesecake Recipes Cake Recipes Pie Recipes Muffin Recipes Custard Recipes Best Appetizers Appetizers Low Fat Salsa Recipes Dip Recipes International Recipes Afghan Recipes Alaska Recipes French Recipes German Recipes Greek Recipes Italian Recipes Spanish Recipes Thai Recipes Korean Recipes Chinese Recipes Mexican Recipes Indian Recipes Beef Recipes Pork Pork & Ham Pork Butts Pork Chop Recipes Pork Ribs Rulled Pork Poultry Recipes Stews Recipes Ground Beef Barbecue Grill Barbecue Smoker All Purpose Sauce BBQ Sauce Barbecue Sauce Carolina BBQ Sauce Pickle Recipes Marinades Smoking Low Fat Appetizers & Dips Low Fat Breakfast Low Fat Cakes Low Fat Cheesecakes Low Fat Cookies Low Fat Desserts Low Fat Fish & Seafood Low Fat Meats Low Fat Pasta Low Fat Pies Low Fat Salads Low Fat Sandwiches Low Fat Sauces & Condiments Low Fat Sides Low Fat Soups Low Fat Vegetarian Baker's Dozen Taste of Home Recipe Book Bon Appetit Cookbook Blacktie Cookbook Buster Cook Book Cookbook USA Cook Book Cook Book Sara's Cookbook Sara's Cookbook Appetizers and Dips Poultry recipes Diabetic recipes Holiday recipes Miscellaneous recipes 110 recipes 1986 Usenet cookbook 2900 recipes Cyberrealm recipes Great sysops of world Specialty recipes Ceideburg recipes Cheese recipes Chili recipes Fruits recipes Garlic recipes Great chefs of NY Londontowne recipes Raisins recipes Recipes for kids US Food Vegetarian recipes Bread recipes Drinks Meat Dishes Brisket recipes Caribou recipes Chicken recipes Filet mignons recipes Pork recipes Swordfish recipes Turkey recipes Pasta recipes Uncategorized recipes Ethnic recipes Canada recipes English recipes Ethiopia recipes Germany recipes Greece recipes Mexican recipes Philippines recipes Welsh recipes Microwave recipes Soups recipes Vegetable recipes Asparagus recipes Barley recipes Brown rice recipes Lentil recipes Mushrooms recipes Salads recipes Wild rice Desserts recipes Cakes recipes Chocolate recipes Cookies recipes Ice cream recipes