Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NVDA 2014.3 RC1 not reading a specific Excel spreadsheet #4409

Closed
nvaccessAuto opened this issue Aug 23, 2014 · 8 comments
Closed

NVDA 2014.3 RC1 not reading a specific Excel spreadsheet #4409

nvaccessAuto opened this issue Aug 23, 2014 · 8 comments
Assignees
Milestone

Comments

@nvaccessAuto
Copy link

Reported by andrewd on 2014-08-23 01:11
The attached file is one I have to fill out at work each day. Unlike other Excel files, 2014.3 RC1 does not announce cells and, without having NVDA read the current line, does not read the contents of cells. This has occurred on Windows7 and Windows8.1. I tried saving as a .xlsx, with the same result. This problem has not occurred with earlier versions of NVDA. While a nuisance for me, if the problem cannot be rectified or replicated on another file it may have to be put down to an old file with unique characteristics.

@nvaccessAuto
Copy link
Author

Attachment Educational Flex sheet.xls added by andrewd on 2014-08-23 01:15
Description:
Excel spreadsheet with protection applied to some fields

@nvaccessAuto
Copy link
Author

Comment 1 by oaron (in reply to comment description) on 2014-08-23 07:35
Replying to andrewd:

The attached file is one I have to fill out at work each day. Unlike other Excel files, 2014.3 RC1 does not announce cells and, without having NVDA read the current line, does not read the contents of cells. This has occurred on Windows7 and Windows8.1. I tried saving as a .xlsx, with the same result. This problem has not occurred with earlier versions of NVDA. While a nuisance for me, if the problem cannot be rectified or replicated on another file it may have to be put down to an old file with unique characteristics.

@nvaccessAuto
Copy link
Author

Comment 2 by jteh on 2014-08-25 06:19
Confirmed. Temporary workaround: disable Report table row/column headers in NVDA Document Formatting settings.

Technical: It seems we can't access currentRegion on a protected (i.e. protected from changes, not protected view) sheet. This makes no sense at all to me, but such is life. Excerpt from traceback:

  File "NVDAObjects\window\excel.py", line 388, in _get_columnHeaderText
    return self.parent.fetchAssociatedHeaderCellText(self,columnHeader=True)
  File "NVDAObjects\window\excel.py", line 237, in fetchAssociatedHeaderCellText
    cellRegion=cell.excelCellObject.currentRegion
...
COMError: (-2146827284, None, (u'You cannot use this command on a protected sheet. To use this command, you must first unprotect the sheet (Review tab, Changes group, Unprotect Sheet button). You may be prompted for a password.', u'Microsoft Excel', u'xlmain11.chm', 0, None))

Can we perhaps do the row/column header stuff without regard to regions; i.e. just pretend the entire sheet is the region? Failing that, we should at least fail gracefully here and just silently abort retrieval of row/column headers.

Not blocking the release because there's a reasonable workaround, but a fix would be nice if it's simple enough.

@nvaccessAuto
Copy link
Author

Comment 3 by Michael Curran <mick@... on 2014-08-26 03:41
In [e6874f4]:

Excel support: cell.currentRegion fails if the sheet is protected. Therefore where it is used (fetchHeaderCellText) catch the error and return None. Auto column/row header reading won't work, but at least the sheet will be still usable. Fixes #4409

Changes:
State: closed

@nvaccessAuto
Copy link
Author

Comment 4 by vitallie on 2014-11-14 22:14
Are there still tickets open about excel?
I am using NVDA with a rather large excel sheet, when cells are protected, NVDA is not able to tell me the column headers.
I can define them with insert+shift+C butt NVDA won't repeat them back to me when navigating between columns.
this feature works fine when cells are not protected.

@nvaccessAuto
Copy link
Author

Comment 7 by jteh (in reply to comment 4) on 2014-11-17 04:53
Replying to vitallie:

I am using NVDA with a rather large excel sheet, when cells are protected, NVDA is not able to tell me the column headers.

See comment:2. Excel won't let us access region information for protected areas and we need to access region information for headers. In short, unless someone knows a way around this that we haven't discovered, there's nothing we can do here; Excel simply doesn't allow it.
Changes:
Milestone changed from None to 2014.4

@nvaccessAuto
Copy link
Author

Comment 8 by andrewd (in reply to comment 7) on 2014-11-17 21:06
I don't know how they do it, but JAWS is able to announce heading cells that have been protected. I set cells as column headings with NVDA and then protected the cells and, as we know, it couldn't associate them with cells in the respective columns. I switched to JAWS and it associated the cells.. But this option would not be available if the cells were already locked and password protected.
Replying to jteh:

Replying to vitallie:

I am using NVDA with a rather large excel sheet, when cells are protected, NVDA is not able to tell me the column headers.

See comment:2. Excel won't let us access region information for protected areas and we need to access region information for headers. In short, unless someone knows a way around this that we haven't discovered, there's nothing we can do here; Excel simply doesn't allow it.

@nvaccessAuto
Copy link
Author

Comment 9 by jteh on 2014-11-17 21:14
It's possible JAWS doesn't consider actual Excel regions when determining headiers. If this is true, this is problematic because regions frequently have different headers from other regions. If this isn't the case, I'm not sure how they manage it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants