Header
PowerPoint tips, hints and tutorials that will change your presentations for ever!

INDEX

 

Jigsaws
Sounds
Video
Custom Shows
vba code
NaviSlides
Games for teachers
Bullets
Triggers
Security
Flash Cards
Multiple Instances
PowerPoint 2007
Mail Merge
Random events
Animation
Hyperlinks
Set spellcheck language


Home buttonTutorial buttonContact buttonProducts button


No Screen Refresh PowerPoint 2007

It seems that a recent update has caused some problems in PowerPoint 2007!

If you try to change the fill colour or text colour with code during a show the colour change only happens when you exit the show. The sacreen does not refresh during the show itself which of course is what you needed!

There may also be an associated problem with link colours. If you have hyperlinked text you may find that the followed colour only shows again when you exit show mode.

Solution

It seems that to workaround this bug (which maybe Microsoft will fix soon) you need to change the slide in edit view with code. In the code below we add an empty text box wand then delete it. You must make the change on the same slide that you want to refresh. NOTE changes that involve moving or adding shapes may reset any animations. To avoid this you could change the code to add "" to a textrange. In this case you need to make sure that the shape selected can have a textframe. The code below adds and removes an empty textbox.

Example Code

Sub refresh_me(oshp As Shape)
Dim osld As Slide
'get current slide
Set osld = SlideShowWindows(1).View.Slide
oshp.Fill.ForeColor.RGB = vbGreen
'the next line adds and removes the empty textbox and refreshs the slide
osld.Shapes.AddTextbox msoTextOrientationHorizontal, 1, 1, 1, 1
osld.Shapes(osld.Shapes.Count).Delete
End Sub

Hyperlinks Colours

It's less appropriate to use vba to fix the followed colour problem but it is fairly easy.

Instead of a "Last Slide Viewed" button to return to the slide you linked from you can make the button run this code. This will only work if you go straight back with no intervening slides! You could easily adapt the code to go to a specific slide eg a menu by setting osld to that slide.

Sub goback()
' Last Slide Viewed
Dim osld As Slide
Set osld = SlideShowWindows(1).View.LastSlideViewed
osld.Shapes.AddTextbox msoTextOrientationHorizontal, 1, 1, 1, 1
SlideShowWindows(1).View.GotoSlide (osld.SlideIndex)
End Sub

Sub go_to_first()
' Last Slide Viewed
Dim osld As Slide
Set osld = SlideShowWindows(1).View.First
osld.Shapes.AddTextbox msoTextOrientationHorizontal, 1, 1, 1, 1
SlideShowWindows(1).View.GotoSlide (osld.SlideIndex)
End Sub

Alternative that does not reset animation

Sub no_reset(oshp As Shape)
oshp.Fill.ForeColor.RGB = vbRed
'should not reset animations
oshp.TextFrame.TextRange = oshp.TextFrame.TextRange.Text & ""
End Sub

STOP PRESS

Problem seems to be Security Update 982158 Try removing it!

 

 
 

Back to the Index Page

POWERPOINT BLOG

Articles on your favourite sport

Free Microsoft PowerPoint Advice, help and tutorials, Template Links
This website is sponsored by Technology Trish Ltd
© Technology Trish 2007
Registered in England and Wales No.5780175
PowerPoint® is a registered trademark of the Microsoft Corporation