none
How to draw on top of an Excel Worksheet without changing spreadsheet

    Question

  • Hello,

    I want to annotate a spreadsheet, temporarily.  Draw some boxes around some cells, ideally a little pop up combo box next to certain cells.

    However, I do NOT want to use the obvious approach of using Cell borders, Excel Shapes etc. because I do not want to modify the underlying spreadsheet in any way.

    I have seen this done, and in ways that seem to adapt to changing the width of spreadsheet columns etc.  But I would like to know how it is done.  Hopefully one does not put invisible windows over the spreadsheet etc. which would be very brittle.

    Regards,

    Anthony


    Anthony
    • Moved by Cindy Meister MVPMVP Thursday, November 10, 2011 6:11 AM not vsto-related (From:Visual Studio Tools for Office)
    Thursday, November 10, 2011 5:39 AM

Answers

  • Thanks for the help, but my original question was to not update the spreadsheet.

    I have a little prototype going which draws transparent WPF windows over Excel, and that sort of works.  There are a lot of events to catch, and PointsToScreenPixelsX is broken per my other post.

    Regardcs,

    Anthony


    Anthony
    Friday, November 11, 2011 10:08 AM

All replies

  • I think the example you saw was adding a comment to the worksheet cell.  Yo can add comments by right clicking on the cell and select add comments.

    You can also add "Callout" to a worksheet.  Callouts is in AutoShapes which is part of the Drawing Toolbar.  Adding a shape to a worksheet doesn't change the worksheet, it just adds a picture ontop of the worksheet.


    jdweng
    Thursday, November 10, 2011 10:13 AM
  • No, definitely not.  I think it  was drawing on top.

    Anthony


    Anthony
    Friday, November 11, 2011 12:01 AM
  • Hi Anthony,

    you can use Insert Shapes or Insert SmartArt.

    Once inserted right click Choose format shape and set the Transparency value so you can see the underlying cells...


    Brian, ProcessIT- Hawke's Bay, New Zealand
    Friday, November 11, 2011 3:51 AM
  • Use Callouts in atoshape and set the transparancy like Brian suggested.
    jdweng
    Friday, November 11, 2011 5:30 AM
  • Thanks for the help, but my original question was to not update the spreadsheet.

    I have a little prototype going which draws transparent WPF windows over Excel, and that sort of works.  There are a lot of events to catch, and PointsToScreenPixelsX is broken per my other post.

    Regardcs,

    Anthony


    Anthony
    Friday, November 11, 2011 10:08 AM
  • The PointsToScreenPixelsX isn't working because you are refering to the wrong window.  I would need to see the code to determine how to fix the problem.


    jdweng
    Friday, November 11, 2011 10:32 AM
  • No, Window.PointsToScreenPixelsX is broken.  It requires pixel parameters, not points.  However, Pane.PointsToScreenPixelsX works, although ActivePane is broken.  See my other post.

    Anthony


    Anthony
    Monday, November 14, 2011 1:13 AM