ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Pivot Table Code (https://www.excelbanter.com/excel-discussion-misc-queries/49652-pivot-table-code.html)

FA

Pivot Table Code
 
I have a pivot table that help me analyze a big amount of data. I examine
several scenarios that depends on the selections that I make in the page
fields.

I have to select different combinations in the page fields to produce the
scenarios that I want.

I want to simplify the process for other users. I want to use a combo box
that commands the page fields combinations that I desire.

The combo box should have a list of scenarios = scenario 1, scenario 2, etc.
The selection will change more than one page field in order to provide the
needed information.

How can I do this?

I though about using the combo box to run several macros. The problem is
that I don't know how to make the combo box run the different macros. I know
how to do it with Option bottons for example.

Please help!

Dave Peterson

I created a pivottable on Sheet2.

I added a combobox onto Sheet2.

I put this code behind the worksheet:

Option Explicit
Private Sub ComboBox1_Change()

If Me.ComboBox1.ListIndex < 0 Then
Exit Sub
End If

Select Case LCase(Me.ComboBox1.Value)
Case Is = "scenario 1"
With Me.PivotTables("pivottable1")
.PageFields("Name1").CurrentPage = "asdf1"
.PageFields("name2").CurrentPage = "qwer1"
End With
Case Is = "scenario 2"
With Me.PivotTables("pivottable1")
.PageFields("Name1").CurrentPage = "asdf2"
.PageFields("name2").CurrentPage = "qwer3"
End With
End Select

End Sub

You'll have to modify the names of the page fields and the values you want for
the currentpage.

I put this behind the ThisWorkbook module--to populate that combobox when the
workbook is opened:

Option Explicit
Private Sub Workbook_Open()
With Worksheets("Sheet2").ComboBox1
.Clear
.AddItem "Scenario 1"
.AddItem "Scenario 2"
End With
End Sub

If you're new to macros, you may want to read David McRitchie's intro at:
http://www.mvps.org/dmcritchie/excel/getstarted.htm


FA wrote:

I have a pivot table that help me analyze a big amount of data. I examine
several scenarios that depends on the selections that I make in the page
fields.

I have to select different combinations in the page fields to produce the
scenarios that I want.

I want to simplify the process for other users. I want to use a combo box
that commands the page fields combinations that I desire.

The combo box should have a list of scenarios = scenario 1, scenario 2, etc.
The selection will change more than one page field in order to provide the
needed information.

How can I do this?

I though about using the combo box to run several macros. The problem is
that I don't know how to make the combo box run the different macros. I know
how to do it with Option bottons for example.

Please help!


--

Dave Peterson

Dave Peterson

That combobox on sheet2 was from the Control Toolbox toolbar--not the Forms
toolbar.

Dave Peterson wrote:

I created a pivottable on Sheet2.

I added a combobox onto Sheet2.

I put this code behind the worksheet:

Option Explicit
Private Sub ComboBox1_Change()

If Me.ComboBox1.ListIndex < 0 Then
Exit Sub
End If

Select Case LCase(Me.ComboBox1.Value)
Case Is = "scenario 1"
With Me.PivotTables("pivottable1")
.PageFields("Name1").CurrentPage = "asdf1"
.PageFields("name2").CurrentPage = "qwer1"
End With
Case Is = "scenario 2"
With Me.PivotTables("pivottable1")
.PageFields("Name1").CurrentPage = "asdf2"
.PageFields("name2").CurrentPage = "qwer3"
End With
End Select

End Sub

You'll have to modify the names of the page fields and the values you want for
the currentpage.

I put this behind the ThisWorkbook module--to populate that combobox when the
workbook is opened:

Option Explicit
Private Sub Workbook_Open()
With Worksheets("Sheet2").ComboBox1
.Clear
.AddItem "Scenario 1"
.AddItem "Scenario 2"
End With
End Sub

If you're new to macros, you may want to read David McRitchie's intro at:
http://www.mvps.org/dmcritchie/excel/getstarted.htm

FA wrote:

I have a pivot table that help me analyze a big amount of data. I examine
several scenarios that depends on the selections that I make in the page
fields.

I have to select different combinations in the page fields to produce the
scenarios that I want.

I want to simplify the process for other users. I want to use a combo box
that commands the page fields combinations that I desire.

The combo box should have a list of scenarios = scenario 1, scenario 2, etc.
The selection will change more than one page field in order to provide the
needed information.

How can I do this?

I though about using the combo box to run several macros. The problem is
that I don't know how to make the combo box run the different macros. I know
how to do it with Option bottons for example.

Please help!


--

Dave Peterson


--

Dave Peterson

FA

I can't make it work. The combobox is from the Control toolbox. But it is not
populated when opened.

This is what I have:
Option Explicit
Private Sub ComboBox1_Change()

If Me.ComboBox1.ListIndex < 0 Then
Exit Sub
End If

Select Case LCase(Me.ComboBox1.Value)
Case Is = "OPH"
With Me.PivotTables("MDlist")
..PageFields("Terr GT").CurrentPage = "(All)"
..PageFields("Terr AA").CurrentPage = "(All)"
..PageFields("MSR Name").CurrentPage = "(All)"
..PageFields("Sales Group").CurrentPage = "OPH"
End With
Case Is = "Angelica"
With Me.PivotTables("MDList")
..PageFields("Terr GT").CurrentPage = "Angelica"
..PageFields("Terr AA").CurrentPage = "(All)"
..PageFields("MSR Name").CurrentPage = "(All)"
..PageFields("Sales Group").CurrentPage = "OPH"
End With
End Select

End Sub

Option Explicit
Private Sub Workbook_open()
With Worksheets("Rxs Profile").ComboBox1
..Clear
..AddItem "OPH"
..AddItem "Angelica"
End With

End Sub

Any suggestions?

"FA" wrote:

I have a pivot table that help me analyze a big amount of data. I examine
several scenarios that depends on the selections that I make in the page
fields.

I have to select different combinations in the page fields to produce the
scenarios that I want.

I want to simplify the process for other users. I want to use a combo box
that commands the page fields combinations that I desire.

The combo box should have a list of scenarios = scenario 1, scenario 2, etc.
The selection will change more than one page field in order to provide the
needed information.

How can I do this?

I though about using the combo box to run several macros. The problem is
that I don't know how to make the combo box run the different macros. I know
how to do it with Option bottons for example.

Please help!


Dave Peterson

Maybe it's a simple change....

This line:

Select Case LCase(Me.ComboBox1.Value)

Says you want compare lower case text.

So this will never work:
Case Is = "OPH"
But this might:
Case Is = "oph"

Same with:
Case Is = "Angelica"
to
Case Is = "angelica"

if you're really worried about future typing, you could use:
Case Is = lcase("OPH")
and
Case Is = lcase("Angelica")

FA wrote:

I can't make it work. The combobox is from the Control toolbox. But it is not
populated when opened.

This is what I have:
Option Explicit
Private Sub ComboBox1_Change()

If Me.ComboBox1.ListIndex < 0 Then
Exit Sub
End If

Select Case LCase(Me.ComboBox1.Value)
Case Is = "OPH"
With Me.PivotTables("MDlist")
.PageFields("Terr GT").CurrentPage = "(All)"
.PageFields("Terr AA").CurrentPage = "(All)"
.PageFields("MSR Name").CurrentPage = "(All)"
.PageFields("Sales Group").CurrentPage = "OPH"
End With
Case Is = "Angelica"
With Me.PivotTables("MDList")
.PageFields("Terr GT").CurrentPage = "Angelica"
.PageFields("Terr AA").CurrentPage = "(All)"
.PageFields("MSR Name").CurrentPage = "(All)"
.PageFields("Sales Group").CurrentPage = "OPH"
End With
End Select

End Sub

Option Explicit
Private Sub Workbook_open()
With Worksheets("Rxs Profile").ComboBox1
.Clear
.AddItem "OPH"
.AddItem "Angelica"
End With

End Sub

Any suggestions?

"FA" wrote:

I have a pivot table that help me analyze a big amount of data. I examine
several scenarios that depends on the selections that I make in the page
fields.

I have to select different combinations in the page fields to produce the
scenarios that I want.

I want to simplify the process for other users. I want to use a combo box
that commands the page fields combinations that I desire.

The combo box should have a list of scenarios = scenario 1, scenario 2, etc.
The selection will change more than one page field in order to provide the
needed information.

How can I do this?

I though about using the combo box to run several macros. The problem is
that I don't know how to make the combo box run the different macros. I know
how to do it with Option bottons for example.

Please help!


--

Dave Peterson

FA

The Combo box is empty. I understood the code was going to populate the
combobox. Is that correct? How can I make this work?

The cases are correct.
Any other suggestions?

"Dave Peterson" wrote:

Maybe it's a simple change....

This line:

Select Case LCase(Me.ComboBox1.Value)

Says you want compare lower case text.

So this will never work:
Case Is = "OPH"
But this might:
Case Is = "oph"

Same with:
Case Is = "Angelica"
to
Case Is = "angelica"

if you're really worried about future typing, you could use:
Case Is = lcase("OPH")
and
Case Is = lcase("Angelica")

FA wrote:

I can't make it work. The combobox is from the Control toolbox. But it is not
populated when opened.

This is what I have:
Option Explicit
Private Sub ComboBox1_Change()

If Me.ComboBox1.ListIndex < 0 Then
Exit Sub
End If

Select Case LCase(Me.ComboBox1.Value)
Case Is = "OPH"
With Me.PivotTables("MDlist")
.PageFields("Terr GT").CurrentPage = "(All)"
.PageFields("Terr AA").CurrentPage = "(All)"
.PageFields("MSR Name").CurrentPage = "(All)"
.PageFields("Sales Group").CurrentPage = "OPH"
End With
Case Is = "Angelica"
With Me.PivotTables("MDList")
.PageFields("Terr GT").CurrentPage = "Angelica"
.PageFields("Terr AA").CurrentPage = "(All)"
.PageFields("MSR Name").CurrentPage = "(All)"
.PageFields("Sales Group").CurrentPage = "OPH"
End With
End Select

End Sub

Option Explicit
Private Sub Workbook_open()
With Worksheets("Rxs Profile").ComboBox1
.Clear
.AddItem "OPH"
.AddItem "Angelica"
End With

End Sub

Any suggestions?

"FA" wrote:

I have a pivot table that help me analyze a big amount of data. I examine
several scenarios that depends on the selections that I make in the page
fields.

I have to select different combinations in the page fields to produce the
scenarios that I want.

I want to simplify the process for other users. I want to use a combo box
that commands the page fields combinations that I desire.

The combo box should have a list of scenarios = scenario 1, scenario 2, etc.
The selection will change more than one page field in order to provide the
needed information.

How can I do this?

I though about using the combo box to run several macros. The problem is
that I don't know how to make the combo box run the different macros. I know
how to do it with Option bottons for example.

Please help!


--

Dave Peterson


FA

It worked with lcase. I selected the list through properties and now is
working.

Thank you very much!

"FA" wrote:

The Combo box is empty. I understood the code was going to populate the
combobox. Is that correct? How can I make this work?

The cases are correct.
Any other suggestions?

"Dave Peterson" wrote:

Maybe it's a simple change....

This line:

Select Case LCase(Me.ComboBox1.Value)

Says you want compare lower case text.

So this will never work:
Case Is = "OPH"
But this might:
Case Is = "oph"

Same with:
Case Is = "Angelica"
to
Case Is = "angelica"

if you're really worried about future typing, you could use:
Case Is = lcase("OPH")
and
Case Is = lcase("Angelica")

FA wrote:

I can't make it work. The combobox is from the Control toolbox. But it is not
populated when opened.

This is what I have:
Option Explicit
Private Sub ComboBox1_Change()

If Me.ComboBox1.ListIndex < 0 Then
Exit Sub
End If

Select Case LCase(Me.ComboBox1.Value)
Case Is = "OPH"
With Me.PivotTables("MDlist")
.PageFields("Terr GT").CurrentPage = "(All)"
.PageFields("Terr AA").CurrentPage = "(All)"
.PageFields("MSR Name").CurrentPage = "(All)"
.PageFields("Sales Group").CurrentPage = "OPH"
End With
Case Is = "Angelica"
With Me.PivotTables("MDList")
.PageFields("Terr GT").CurrentPage = "Angelica"
.PageFields("Terr AA").CurrentPage = "(All)"
.PageFields("MSR Name").CurrentPage = "(All)"
.PageFields("Sales Group").CurrentPage = "OPH"
End With
End Select

End Sub

Option Explicit
Private Sub Workbook_open()
With Worksheets("Rxs Profile").ComboBox1
.Clear
.AddItem "OPH"
.AddItem "Angelica"
End With

End Sub

Any suggestions?

"FA" wrote:

I have a pivot table that help me analyze a big amount of data. I examine
several scenarios that depends on the selections that I make in the page
fields.

I have to select different combinations in the page fields to produce the
scenarios that I want.

I want to simplify the process for other users. I want to use a combo box
that commands the page fields combinations that I desire.

The combo box should have a list of scenarios = scenario 1, scenario 2, etc.
The selection will change more than one page field in order to provide the
needed information.

How can I do this?

I though about using the combo box to run several macros. The problem is
that I don't know how to make the combo box run the different macros. I know
how to do it with Option bottons for example.

Please help!


--

Dave Peterson



All times are GMT +1. The time now is 02:49 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com