Here's a possible way to start; Name the range on the Proof sheet you want to view, say,
CheckRange.
Paste the following into a new standard module:
Code:
Dim xxx As Object 'global variable
Sub blah()
Range("CheckRange").Copy
Set xxx = ActiveSheet.Pictures.Paste(Link:=True)
With xxx.ShapeRange
.Fill.Visible = msoTrue
.Fill.Solid
.Fill.ForeColor.SchemeColor = 43
.Fill.Transparency = 0#
.Line.Weight = 1.5
.Line.DashStyle = msoLineSolid
.Line.Style = msoLineSingle
.Line.Transparency = 0#
.Line.Visible = msoTrue
.Line.ForeColor.SchemeColor = 64
.Line.BackColor.RGB = RGB(255, 255, 255)
.Left = Cells(1, ActiveWindow.ScrollColumn + 1).Left
.Top = Cells(ActiveWindow.ScrollRow + 1, 1).Top
End With
xxx.OnAction = "Macro66"
End Sub
Sub Macro66()
xxx.Delete
End Sub
Create a button on the sheet you want the pop-up to appear on and assign to it the macro
blah.
Click the button to show the pop-up, click the pop-up itself to delete it.
I've chosen various aspects myself, these can of course be tweaked; positioning, colour, transparency, border etc. There's no error checking to stop you producing multiple pop-ups, so clicking on a pop-up to delete it only works on the most recently created one. (It would be easy to add a line to
blah to delete a pre-existing pop-up if one existed.)
The pop-up is live, so changes in the range on
Proof will be reflected straightaway - no need to delete and bring up a fresh pop-up.
Of course, it doesn't have to be a button-click to run
blah to bring the pop-up up, it could be some sheet event. Likewise a sheet event may cause it to be deleted too.