Solved

Command button code

Posted on 2011-03-09
5
285 Views
Last Modified: 2012-05-11
Please can you help, I am hoping to do away with the formulas held within E9:E917 from Sheet3 "Location.

I was hoping to use a command button that could calculate the occurrence of the listed codes (C9:C917) on sheet1 H14:H873

It would then display these in descending order.

The difficulty is that the formulas currently filter the data by the listed dates in F2:F3 sheet3 and matches this to the dates listed in B14:B873 sheet1.





help.xls
0
Comment
Question by:Gazza83
  • 3
  • 2
5 Comments
 
LVL 39

Expert Comment

by:nutsch
ID: 35087367
Here, this code will put in the formula, then copy /paste values it so the formula disappears when you're not updating:

Sub Macro2()
'
With Sheets("Location").Range("E9:E917")
    .FormulaR1C1 = _
        "=SUMPRODUCT((data!R14C2:R20000C2+0>=R2C6)*(data!R14C2:R20000C2+0<=R3C6)*(data!R14C8:R20000C8=RC3))"
    .Value = .Value
End With
End Sub

Open in new window


Thomas
0
 

Author Comment

by:Gazza83
ID: 35087883
Thanks Thomas, this seems perfect! I've run the code and it took little to no processing time; whereas the old way was taken ages.

Is there a way I could sort the range highest-Lowest, maybe I could use another command button?
0
 
LVL 39

Accepted Solution

by:
nutsch earned 500 total points
ID: 35088387
Something like this?

Sub Macro2()

With Sheets("Location").Range("E9:E917")
    .FormulaR1C1 = _
        "=SUMPRODUCT((data!R14C2:R20000C2+0>=R2C6)*(data!R14C2:R20000C2+0<=R3C6)*(data!R14C8:R20000C8=RC3))"
    .Value = .Value
End With

With Sheets("Location").Range("C9:E917")
    .Sort Key1:=Range("E9"), Order1:=xlDescending
End With

End Sub

Open in new window


Thomas
0
 

Author Closing Comment

by:Gazza83
ID: 35088944
Thanks Thomas!
0
 
LVL 39

Expert Comment

by:nutsch
ID: 35088966
Glad to help. Thanks for the grade.

Thomas
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …
Graphs within dashboards are meant to be dynamic, representing data from a period of time that will change each time the dashboard is updated with new data. Rather than update each graph to point to a different set within a static set of data, t…

740 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