Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Darke GBF
Dec 30, 2006

The cold never bothered me anyway~
edit: Got it, thanks.

Darke GBF fucked around with this message at 07:29 on Nov 16, 2010

Adbot
ADBOT LOVES YOU

Aredna
Mar 17, 2007
Nap Ghost
It looks like your data is already set up perfectly so all you need to do is select it all, click on Insert, Chart, and change the Chart Type (try right click) to Line.

McFrogs
Jul 29, 2006

General von Steingrabber
Why would a What-If analysis turn up the same values for every cell?

I have a 3-variable formula for desired output but the third is essentially a dummy so I figured, since it's essentially two-variable, what-if would work.

Screen:

https://wi.somethingawful.com/38/3874ca2e409810a997b11c8c199641b2f99a558d.png

Frost -273
Nov 26, 2004
Is there a way to color cels that are used in a formula?

For example in =SUM(A1,A3,A4) I want each cel, included in the formula, to change to green so I know I have used them.

I have another formula =SUM(A2,B2,D11) I want these to turn red.

When I double click on a cell with a formula it put an outline round the reference cell but won't let me color then. How do I do this?

I have a lot of sum formulas in this sheet and I need to know what I have added and what is unused.


I have been googling for about 45 minute but still can't work it out.

The Mechanical Hand
May 21, 2007

as this blessed evening falls don't forget the alcohol
Originally, mistakenly, posted in the general programming thread, but anyway...

Need some help with an excel problem I've come across.

I have a drop down list with names of cities in it.

I want to set this up so when you pick a city from that list another field will populate with an address associated with that city. I know it has to do with formulas and all that but I am totally lost. Any help?

G-Dub
Dec 28, 2004

The Gonz

The Mechanical Hand posted:

Originally, mistakenly, posted in the general programming thread, but anyway...

Need some help with an excel problem I've come across.

I have a drop down list with names of cities in it.

I want to set this up so when you pick a city from that list another field will populate with an address associated with that city. I know it has to do with formulas and all that but I am totally lost. Any help?

You probably want to look at the VLOOKUP function within Excel. I presume there is one address per city? I would have a table of City|Address and then your VLOOKUP would look like:

VLOOKUP(<Cell ref of dropdown>,<range of table>,2)

I presume everything recalculates when one cell is changed, therefore the address will update when the drop down changes.

Aredna
Mar 17, 2007
Nap Ghost

G-Dub posted:

You probably want to look at the VLOOKUP function within Excel. I presume there is one address per city? I would have a table of City|Address and then your VLOOKUP would look like:

VLOOKUP(<Cell ref of dropdown>,<range of table>,2)

I presume everything recalculates when one cell is changed, therefore the address will update when the drop down changes.

Make sure when using the vlookup that you add the 4th parameter and set it to 0 or false as such: VLOOKUP(<Cell ref of dropdown>,<range of table>,2,0)

Leaving it at the default of 1 or TRUE will sometimes return bad results unless you table is sorted and it either has the data you're looking for or you add additional checks to make sure the data is present in the table.

Using 0 or FALSE will return an error with what you were searching for was not found.

Nickelodeon Household
Apr 11, 2010

I like chocolate MIIIILK
As a prelude, let me apologize for any rambling retardedness with my post.

I'm wondering if there's any shortcut method for something I'm trying to do with excel.

So I have one master workbook and literally hundreds of other workbooks from which bits and pieces of data are needed from. Basically, I need to pull the data from a given cell on a specific sheet (say F54) from the hundreds of other workbooks and then put them on the master workbook. Then I need to repeat it for the next type of data.

All of the hundreds of workbooks that aren't the master are organized by year and file name (with the same file name shared for the same source, e.g. Folder: 2010 File: County 1; Folder: 2009 File: County 1. I have like 100 of these counties and years ranging from 2004-2010.

Currently, I've been thinking of employing a brute-force method wherein I create a reference in my master workbook of ='[c:/desktop/projectname/2010/county1]sheetXYZ'!$F$54 (please excuse me if this is plain retarded, I just typed it up off the top of my head).

Copy and paste across the row and change the year entry.
Then move down and do county 2 and follow the same steps.

I wouldn't mind the brute force method, but each of my sheets for the master workbook has a different type of data so I'd have to do this process literally 60,000 times and that just seems excessively time consuming.

So what short cut methods can I employ that will speed this up. I don't have any programming experience and haven't taken a class on office since 1999 (and even then the prof spent the entire time ranting about the virtues of RDRAM as opposed to SDRAM). I'm not sure if I can do this with a VLOOKUP or if I need to use VBA (or how to do it either will work).

Thanks for any help you can give me.

ZerodotJander
Dec 29, 2004

Chinaman, explain!
Looks like you should be able to get something going using the INDIRECT function and concatenating pieces of your reference.

esquilax
Jan 3, 2003

ZerodotJander posted:

Looks like you should be able to get something going using the INDIRECT function and concatenating pieces of your reference.

INDIRECT() can only reference other workbooks if the workbook is open.

The best way I can think of is to to create a text string that has your needed formula using concatenation and/or "&", then using VBA to input that string as the formula in a separate box.

evensevenone
May 12, 2001
Glass is a solid.
I would use VBA for that in a heartbeat.

That way if you ever change where the files are located, or change the layout of the worksheet, you could just edit the VBA function instead of having to completely redo all 60,000 entries on the sheet.

The way I would recommend is making a button on the page called something like "load data", and then write a VBA function that runs when the button is clicked. and the function itself would just need to have a couple loops, as long as the files and folders have consistent namings.


If you have zero programming experience it will probably take you a while, but it's probably going to take you a few days just to make the spreadsheet by hand anyway.

Nickelodeon Household
Apr 11, 2010

I like chocolate MIIIILK
Any clue of a good source to use as a template. I found this. but am not really sure if it's correct or how exactly to modify it.

G-Dub
Dec 28, 2004

The Gonz
Is it the same cell in each workbook you are wanting to get? If you can post some sample source data and the desired sample format I will take a stab at it.

Meme Emulator
Oct 4, 2000

Heres a quick question for yall, is it possible to make a chart that uses descriptive labels on the Y axis? I made a quick spreadsheet using Excel that the people I work with can send to eac other so that we can see, at a glance, which machines were operational and which were not in a given day. Using the conditional reporting function I made a 1 show up as green and a 2 as red, with the same color background so that you get a solid block of color. I was trying to mimic a white board that people might keep in an office, but this way we can email it and keep a running tally of what was operational from week to week. The top picture shows basically what I made, just a nice, simple snapshot of what machines (A through E) worked on days 1 through 7. Sorry about the hideous paint, but my work computer isnt exactly a powerhouse here.

I got a request to graph all this data out though, and I cant get the Y Axis to show anything but a value. I have never really made a graph of ideas like this, theres no real concrete numbers to work with. Since I was using 1s and 2s to mark a machine as operational or not I figured I would just graph that, relabeling 1 to Operational and 2 to Not Operational and plotting it against time, but this is turning out to be a real PITA. Is this even possible using Excel 2003 (which is as updated as I can get at the moment), I dont see any options to graph data that is symbolic rather than actual concrete numbers. The lower picture is an idea of what I suppose my boss wants, even though I think its redundant.

Only registered members can see post attachments!

ZerodotJander
Dec 29, 2004

Chinaman, explain!
As far as I know, there is no built-in way to do what you want. You can duplicate the effects of it though, using a dummy series.

Add an extra column and 2 Label rows to your chart, with a 1 and a 2.

pre:
		1	2	3
Yes	1
No	2
A		1	1	2
B		1	2	1
C		1	1	1
Chart this. Then, go to your Y-Axis settings and turn Chart Labels off. Go to your X-Axis settings and set your Y-Axis to cross over on tick marks. This will result in your 2 dummy points being right on the Y-Axis, with no labels. Then, for your 2 dummy series, set Labels to appear to the Left, and set their Markers to none.

This creates 2 data labels to the left of the Y-Axis with no visible data points associated with them, looking exactly like Axis labels. You can then just edit the text of those labels to be whatever you want.

It's a bit convoluted, but it works!

ZerodotJander fucked around with this message at 16:48 on Jan 7, 2011

gwar3k1
Jan 10, 2005

Someday soon

Meme Emulator posted:




So long as people can interpret a boolean value as working/not working, you surely don't have an issue, other than using the wrong chart type. Use a bar graph, y-axis is your condition, x-axis is the day and you plot every machine on every day.

In the image, 1 is working, 2 is not. You could also make it obvious which machine wasn't working on which day by using 0 for working (will not display on the chart) and 1 for not working.

If you must have objective labels, use a textbox placed over the number. ZerodotJander's solution to labels is better.

gwar3k1 fucked around with this message at 18:45 on Jan 7, 2011

Meme Emulator
Oct 4, 2000

Thanks for the help, honestly both of those charts look pretty meaningless to me and the color coded table I put together in my opinion puts the information out there in a much clearer to read way but I think my boss has it in his head that he will somehow be able to chart a years worth of data and get some sort of secret formula as to when a machine will go down. Ill whip it together but since itll be such a pita to make those types of charts at will, it might be sort of useless.

Nickelodeon Household
Apr 11, 2010

I like chocolate MIIIILK

G-Dub posted:

Is it the same cell in each workbook you are wanting to get? If you can post some sample source data and the desired sample format I will take a stab at it.

Sorry for the delayed response, I've been traveling quite a bit these past 2 days.

Hopefully this makes sense:



As you can see for by this example, the code for the 2004 value for Adair is: ='C:\Users\Jim\Desktop\3rd Class Cities\County Budgets\2005_budgets\[adair.xls]GR R'!$H$104

For the 2005 value for Adair the code is: ='C:\Users\Jim\Desktop\3rd Class Cities\County Budgets\2006_budgets\[adair.xls]GR R'!$H$104

For the next one Andrew the code is: ='C:\Users\Jim\Desktop\3rd Class Cities\County Budgets\2005_budgets\[andrew.xls]GR R'!$H$104

So is there a short-cut method to tell excel to pull the year's value from the next year's folder and from the file that matches the name in the first column. If changing my year headers in the top row makes this easier, I can do that too because these values will be copied and pasted as values into the actual working spreadsheet (the boss doesn't want any cells to directly reference another sheet as the recipients will not have access to all the sheets).

Fuoco
Jan 3, 2009
There should be a way of doing this without the need for VBA. It's a bit inelegant though. Try the following...

In cell B2 put the following formula:

code:
="='C:\Users\Jim\Desktop\3rd Class Cities\County Budgets\" & B$1+1 & "_budgets\[" & LOWER($A2) & "]GR R'!$H$104"
This will return text to the cell of the full reference that we need. Fill the formula across and down to cover all the space required.

Save your spreadsheet at this point (but don't close it). Open up Notepad.

In your spreadsheet, select B2 down to the end, and copy the cells. Paste these into Notepad.

Then, copy the full text back from Notepad and paste into the same place in Excel. You'll notice at this point, rather than pasting back the reference as text, it's now actually reading from the reference instead.

Do the same with the remaining columns to get the remaining data.

Fuoco fucked around with this message at 23:57 on Jan 9, 2011

Nickelodeon Household
Apr 11, 2010

I like chocolate MIIIILK

Fuoco posted:

There should be a way of doing this without the need for VBA. It's a bit inelegant though. Try the following...

In cell B2 put the following formula:

code:
="='C:\Users\Jim\Desktop\3rd Class Cities\County Budgets\" & B$1+1 & "_budgets\[" & LOWER($A2) & "]GR R'!$H$104"
This will return text to the cell of the full reference that we need. Fill the formula across and down to cover all the space required.

Save your spreadsheet at this point (but don't close it). Open up Notepad.

In your spreadsheet, select B2 down to the end, and copy the cells. Paste these into Notepad.

Then, copy the full text back from Notepad and paste into the same place in Excel. You'll notice at this point, rather than pasting back the reference as text, it's now actually reading from the reference instead.

Do the same with the remaining columns to get the remaining data.

Thanks, I tried this and it worked like a charm. Now I'm going to adapt this technique for the other values I need. On the plus side, this showed me that some of the counties disappeared over the data range (they're classified based on size so that's not huge shock) so I have a few #refs, but they're a data issue for my boss to deal with. Honestly, you just made this job infinitely easier. Thanks again.

Dead Pressed
Nov 11, 2009
This is probably too simple for this place (or the incorrect location, sorry!), but I have an excel macro question to ask of you all.

I'm working on a wedding list in excel, and there's some sorting functionality I'm trying to macro and assign to a big button for my fiancee. Basically, the list has these headers:

Lastname, family designation, head of household, firstname, party invite, party rsvp, wedding invite, wedding rsvp

Click here for the full 1104x137 image.


Basically, the goal is for the macro to sort last name first, then order members of different families with same name (ie, jones) by a numerical designation (jones 1, jones 2), then it will place heads of the households at the top of the list (for that specfic name) so they can appropriately be addressed in the invitations, then sorted lastly sorted alphabetically by first name. I've got it set up so we can also filter from the headers so that my fiancee and check off people who've gotten invites to the party/wedding, and then filter the list to see who needs what, and how many are coming, etc.

TLDR So, now the point. I can go through the sorting steps fine myself, and everything works how I intend. I then go to record the macro in excel, and it works, but as soon as more names are added, the macro does not work. It may work randomly after mashing the hotkeys a thousand times, or they may not. Does anybody any idea what may be happening?

*This is crossposted in the Small Q megathread. I didn't realize there was an up to date one for excel, as the one in the megathread was dead. :(*

ZerodotJander
Dec 29, 2004

Chinaman, explain!
Make sure you have relative references turned on.

Dead Pressed
Nov 11, 2009

ZerodotJander posted:

Make sure you have relative references turned on.

"Use relative references" was activated by default.

ZerodotJander
Dec 29, 2004

Chinaman, explain!
How are you selecting your range to sort during your macro record? Make sure whatever way you are doing that selects the full table and not just the range specified at the moment you record the macro.

You could also try just adding a sort column and numbering all your guests in order, and sorting based on that instead of a multi-field sort.

Dead Pressed
Nov 11, 2009

ZerodotJander posted:

How are you selecting your range to sort during your macro record? Make sure whatever way you are doing that selects the full table and not just the range specified at the moment you record the macro.

You could also try just adding a sort column and numbering all your guests in order, and sorting based on that instead of a multi-field sort.

The range is selected via Control-A. Alternatively, clicking the top left button of the worksheet to select all has also been used. Neither method makes a difference.

Numbering every guest is out of the equation. We have hundreds of people, we want it in a certain order, and that'd be just too tedious by hand.

In reality, I can just show her how to sort it the way she wants (its only like 10 clicks of the mouse), and she can sort it herself when she adds new names to the list. I'm really just trying to figure this problem out, as I want a good handle on excel, and I have no idea why its not working. I figure if I can't get this simple macro like this to work, then I'm in trouble in the future.

I appreciate the help.

Sub Par
Jul 18, 2001


Dinosaur Gum
Can you post the code? Excel isn't very good at recording a macro with the idea of a dynamic range, and oftentimes you will need to make a couple edits to what was recorded to make it work as you intended.

Dead Pressed
Nov 11, 2009

Sub Par posted:

Can you post the code? Excel isn't very good at recording a macro with the idea of a dynamic range, and oftentimes you will need to make a couple edits to what was recorded to make it work as you intended.

Certainly!
Now, I by no means coded this. Purely recorded the macro, so I have little to no idea what this means. This should be the last iteration of what I tried.

Excel posted:

Sub Mac2()

End Sub
Sub Sort()
'
' Sort Macro
'
' Keyboard Shortcut: Ctrl+Shift+S
'
Cells.Select
Range("K12").Activate
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("A2:A60") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("C2:C60") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("D2:D60") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("B2:B60") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:J60")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
E

EDIT: Obviously, it looks like for some reason its ending the sorting list at row 60. So I figure if I go in and edit that to 500 or so, it should accommodate up to number, correct?

EDIT2: Okay, looks like by changing all 60s to 500, it works exactly as intended. Does anyone have an idea as to why it would trim the range so low when I had selected all? Is there a way to prevent this in the future?

Thanks for the help!

Dead Pressed fucked around with this message at 07:25 on Jan 12, 2011

Sub Par
Jul 18, 2001


Dinosaur Gum
Ok, this should do the trick. Replace the sub Sort() stuff with this:
code:
Sub Sort()
'
' Sort Macro
'
' Keyboard Shortcut: Ctrl+Shift+S
'

Dim UsedRows As Integer
UsedRows = ActiveSheet.UsedRange.Rows.Count
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range(Cells(2, 1), Cells(UsedRows, 1)) _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range(Cells(2, 3), Cells(UsedRows, 3)) _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range(Cells(2, 4), Cells(UsedRows, 4)) _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range(Cells(2, 2), Cells(UsedRows, 2)) _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange ActiveSheet.UsedRange
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
What I'm doing here is changing the static ranges in there (A2:A60, etc) to dynamic ones. At the start, a variable is set to the number of used rows on your sheet, which is used to build all those ranges for the 4 sort conditions. Then at the bottom in the with statement, I changed the range there (A2:J60) to the range that is currently being used in the workbook. Brief testing indicates to me that it works.

Edit: to answer your questions, the reason it only allowed for 60 rows is because that was the number of rows present when you recorded the macro. As I said, Excel doesn't have any way of knowing that you're trying to build a macro meant to handle an arbitrary number of rows/columns. The recorder is designed to repeated exactly what you did while it was running. And what you did was sort 60 rows of data a certain way, regardless of how many cells you select.

You can see how literal it is by recording a macro that is just you scrolling the mousewheel. It literally records all of those screen scrolling actions as well, so it can play them back to you.

Sub Par fucked around with this message at 07:32 on Jan 12, 2011

G-Dub
Dec 28, 2004

The Gonz
Could you not just use ActiveRange? I'm sure such a thing exists

Didion
Mar 16, 2009
Right, dummy here is doing a times series analysis and need to make an error/ scatter graph. If I'm not mistaken I need my y axis to show a variation of around -60 to 60, a baseline of zero with a line and my x axis needs to be 1 to 4 quarters nicely done from 2006 to 2010? Doing a line graph is "easy" enough, but I'm seemingly not able to make this drat scatter graph. :)

Ivan Drago
Jan 17, 2003

Very simple question (I think):

What I want to do is find a value in an array and return a different value a certain number of columns over AND a certain number of rows down at the same time, like a combination of VLOOKUP and HLOOKUP. Is this possible?

As a quick means of reference, here's a simple table. How can I write a formula that finds "Jim" and returns his salary from this set of data? If there some sort of nested lookup function that would make this possible?
code:
     A       B       C
1    Jim     
2            Age     27
3            ID      2
4            Salary  $38,000
5    
6    Tom
7            Age     32
8            ID      8
9            Salary  $37,500
E: If I were to use =OFFSET(A1,3,2,1,1) this would work, but for the purposes of this file it would be easier if I could reference the lookup value by the text that inside ("Jim") rather than the cell itself (A1). I'm sure there's a way to nest an offset inside a lookup or a match or something along those lines but my brain isn't working today.

Ivan Drago fucked around with this message at 00:05 on Feb 2, 2011

esquilax
Jan 3, 2003

Ivan Drago posted:

Very simple question (I think):

What I want to do is find a value in an array and return a different value a certain number of columns over AND a certain number of rows down at the same time, like a combination of VLOOKUP and HLOOKUP. Is this possible?

As a quick means of reference, here's a simple table. How can I write a formula that finds "Jim" and returns his salary from this set of data? If there some sort of nested lookup function that would make this possible?
code:
     A       B       C
1    Jim     
2            Age     27
3            ID      2
4            Salary  $38,000
5    
6    Tom
7            Age     32
8            ID      8
9            Salary  $37,500
E: If I were to use =OFFSET(A1,3,2,1,1) this would work, but for the purposes of this file it would be easier if I could reference the lookup value by the text that inside ("Jim") rather than the cell itself (A1). I'm sure there's a way to nest an offset inside a lookup or a match or something along those lines but my brain isn't working today.

Try something like "=index(C:C, match("Jim", A:A, 0)+3)"

Index() can also change columns if you need it.

Ivan Drago
Jan 17, 2003

esquilax posted:

Try something like "=index(C:C, match("Jim", A:A, 0)+3)"

Index() can also change columns if you need it.
Brilliant, works perfect for what I need. Thank you for that.

Scaramouche
Mar 26, 2001

SPACE FACE! SPACE FACE!

Hopefully people still read this, as I had an excel question and no where to put it. However, it's not quite an implementation question, but rather a performance one.

Do any of you guys know where Excel 2003 bottlenecks performance wise?

I've got a user who is working with an 80mb very complex spreadsheet in Excel 2003 on Windows XP SP3 32x. First of all, I realize '80mb spreadsheet' is already throwing any kind of objective performance out the window, but I was hoping to minimize the impact. Right now when he changes something and has to recalc it literally takes close to 2 minutes for the entire sheet to update. A lot of this is obviously due to the complexity of the sheet, but I was wondering if I could minimize the slowdown as much as I can with the resources I have. So what I'm wondering where the possible slowdowns could be.

I've already upgraded him to 4gb RAM from 2gb, which hasn't had too great an effect. I'm thinking of one (or all) of these lines of attack, and am wondering which would be the most 'bang for buck' in your guys' opinion. This is in order of expensiveness/severity in my opinion:
1. Upgrade him to Windows 7 32x (in case it's XP that's the major chokepoint)
2. Upgrade him to office 2010 (in case it's office 2003)
3. Give him a new 64x processor machine and put Windows 7 64x on it (in case it's 32 bitness)
4. Slip booze into his coffee every day so everything seems faster

I also realize that I could do 1-3 and it'll have no effect at all, which is why I'd like to know what you guys feel the 'real' bottleneck might be. Is it just that no spreadsheet of that size will ever be efficient and it can't be fixed? Or one of 1-4 above might do the job?

ZerodotJander
Dec 29, 2004

Chinaman, explain!
Without any specifics it is hard to tell. Some things you can do-

Upgrading to an x64 architecture and Office 2007 or 2010 could potentially provide some benefit.

Does every cell in the sheet need to recalculate every time he changes something? Turn automatic update off and then just force recalculate manually as needed.

If he has a lot of pivot tables looking at the same data, you can make pivot tables function based off of each other and sharing the same data/calculations, which helps save memory/processing time.

If he doesn't have a lot of pivot tables, maybe he should?

But yeah it is pretty unlikely a 80MB spreadsheet will ever run anything close to fast, unless 75MB of it is embedded images.

Scaramouche
Mar 26, 2001

SPACE FACE! SPACE FACE!

Thanks for your reply. I will say there are a lot of pivot tables involved (e.g. a formula in one cell might refer to 3 of them, multiplied by say 60 other cells that are summarizing/adding up). The impression I get is that I should be focusing on tweaking the sheet instead of improving the profile of the machine running it, which is probably a wise idea. Unfortunately I'm not too 'with' Excel so we'll have to see what fruit that bears. A quick google around shows me quite a few suggested pages on optimizing performance for sheets.

Aredna
Mar 17, 2007
Nap Ghost
See if there are any uses of the INDIRECT function anywhere. These will cause full recalculations every time anything changes and can often be replaced with other lookup functions.

Look for VLOOKUPs that are searching through a lot of data (10k+ records). Excel 2003 is very bad at optimizing these and even a few thousand of them start to really slow down the spreadsheet. If the target data of the vlookup can be guaranteed to be sorted at all times there are some ways to optimize the vlookup with setting the 4th option to true. You'll need some error checking if you do this as well to make sure what you're looking for is in the data.

Are there any VLOOKUPs to pivot tables? If so, replace those with GETPIVOTDATA instead.

This is more advanced, but you may also look at replacing some of the calculations with pivot table formulas.

Scaramouche
Mar 26, 2001

SPACE FACE! SPACE FACE!

Welp, I took the easy way out and just updated the machine to Windows 7 x64 w/ 4gb of RAM and that seems to have taken care of it. Takes about 1/6 the time now to sum up, and I think that's mostly network related from ODBC hookups. Thanks for the advice guys, and I'll keep it mind, but in the end it was just easier for me to get him a new machine than it was to comb through the formulas on the sheet.

asmallrabbit
Dec 15, 2005
This seems like such a silly little thing that I must be missing something obvious, but when you group cells in excel to get the + and - symbols to expand or collaps those, is there any way to get them to appear on the cell itself instead of to left of the row number?

I'm trying to build a tree of sorts and I would like it if the cells could be expanded by clicking on the cell in case it gets rather large instead of having to scroll back to the left.

IE:
code:
1(-)
   a
   b(-)
    i
    ii
    iii
   c

Adbot
ADBOT LOVES YOU

The Mechanical Hand
May 21, 2007

as this blessed evening falls don't forget the alcohol
I have two columns each with a list of e-mails.

I need to find the e-mails that appear in BOTH Column A and Column B and eliminate the rest.

How can I accomplish this? I'm retarded with excel.

So in short, I want to keep duplicates, and delete any e-mail in Column A or B that doesnt' have an exact match in the other column

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply