Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I'm trying to alter multiple pivot tables and its working great as long as i
enter a number higher or equal to 100 in the target cell. I have to be able to use numbers between 0 an 100 to. What am i doing wrong? My code: Private Sub Worksheet_Change(ByVal Target As Excel.Range) Dim pt01 As PivotTable Dim pf01 As PivotField Dim pi01 As PivotItem Dim pt02 As PivotTable Dim pf02 As PivotField Dim pi02 As PivotItem Set pt01 = Sheets("Noter").PivotTables("3601-Fellesutgifter") Set pt02 = Sheets("Saldobalanse").PivotTables("Saldobalanse") Set pf01 = pt01.PivotFields("IK") Set pf02 = pt02.PivotFields("IK") If Target.Address = "$A$2" Then For Each pi01 In pf01.PivotItems If pi01 = Target.Value Then pf01.CurrentPage = Target.Value Exit For End If Next pi01 For Each pi02 In pf02.PivotItems If pi02 = Target.Value Then pf02.CurrentPage = Target.Value Exit For End If Next pi02 End If End Sub I realy hope you can help! -- Daggi |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() your event handler changes values thus triggering more events that it needs to handle.. try like: Private Sub Worksheet_Change(ByVal Target As Excel.Range) application.enableevents=False 'your code application.enableevents=True end sub -- keepITcool | www.XLsupport.com | keepITcool chello nl | amsterdam Daggi wrote : I'm trying to alter multiple pivot tables and its working great as long as i enter a number higher or equal to 100 in the target cell. I have to be able to use numbers between 0 an 100 to. What am i doing wrong? My code: I realy hope you can help! |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I'm sorry! It did not solve the problem.
The pivot tables have to change when target.value is between 0 and 700. It's working when the value is between 100 and 700. Not when its 99 or less. -- Daggi keepITcool skrev: your event handler changes values thus triggering more events that it needs to handle.. try like: Private Sub Worksheet_Change(ByVal Target As Excel.Range) application.enableevents=False 'your code application.enableevents=True end sub -- keepITcool | www.XLsupport.com | keepITcool chello nl | amsterdam Daggi wrote : I'm trying to alter multiple pivot tables and its working great as long as i enter a number higher or equal to 100 in the target cell. I have to be able to use numbers between 0 an 100 to. What am i doing wrong? My code: I realy hope you can help! |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() hmm. not reading very well, was I :) note that the PivotItem's value is a string. a small rewrite.. hopefully this works, else mail me the workbook. (email in signature.. just add @ and . Private Sub Worksheet_Change(ByVal Target As Excel.Range) Dim pt01 As PivotTable Dim pf01 As PivotField Dim pi01 As PivotItem Dim pt02 As PivotTable Dim pf02 As PivotField Dim pi02 As PivotItem 'moved IF above the assignment of objects If Target.Address = "$A$2" Then Set pt01 = Sheets("Noter").PivotTables("3601-Fellesutgifter") Set pt02 = Sheets("Saldobalanse").PivotTables("Saldobalanse") 'using pagefields not pivot fields Set pf01 = pt01.PageFields("IK") Set pf02 = pt02.PageFields("IK") For Each pi01 In pf01.PivotItems 'using string compare 'and qualified properties iso relying on "default" If StrComp(pi01.Value, Target.Value, vbTextCompare) = 0 Then 'avoid problems.. use the pi to set the pf. (not target) pf01.CurrentPage = pi01.Value Exit For End If Next pi01 For Each pi02 In pf02.PivotItems If StrComp(pi02.Value, Target.Value, vbTextCompare) = 0 Then pf02.CurrentPage = pi02.Value Exit For End If Next pi02 End If End Sub -- keepITcool | www.XLsupport.com | keepITcool chello nl | amsterdam Daggi wrote : I'm sorry! It did not solve the problem. The pivot tables have to change when target.value is between 0 and 700. It's working when the value is between 100 and 700. Not when its 99 or less. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
REPSOT?? Sub Worksheet_Change(ByVal Target As Range) | Excel Discussion (Misc queries) | |||
Private Sub Worksheet_Change(ByVal Target As Excel.Range) | Excel Programming | |||
Private Sub Worksheet_Change(ByVal Target As Excel.Range) | Excel Worksheet Functions | |||
Private Sub Worksheet_Change(ByVal Target As Range) | Excel Programming | |||
Excel VBA .... Worksheet_Change(ByVal Target As Range) question | Excel Programming |