Winand
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Alex_B пришла идея, что можно отслеживать в каком месте ячейки сделан клик на событии SelectionChange. Не уверен, что это в принципе может помочь, но оставлю написанное тут.) Делал в 2013ом офисе, не уверен, что структура окон в других офисах такая же Код: Private Function topix(ByVal points As Long) As Long topix = points / 72 * 96 End Function Sub xy_cell() Dim pt As POINTAPI, hw As Long, hh As Long CR = Selection.row cc = Selection.Column hw = 26 'Ширина хедера hh = 20 'Высота хедера Set wnd = ActiveWorkbook.parent.Windows(1) lr = wnd.VisibleRange.row lc = wnd.VisibleRange.Column xldesk = FindWindowEx(Application.hwnd, 0, "XLDESK", vbNullString) excel7 = FindWindowEx(xldesk, 0, "EXCEL7", vbNullString) Set rng = Range(Cells(lr, lc), Cells(CR, cc)) GetCursorPos pt ScreenToClient excel7, pt cell_w = topix(Cells(CR, cc).Width) cell_h = topix(Cells(CR, cc).Height) cell_x = topix(rng.Width) - cell_w cell_y = topix(rng.Height) - cell_h Debug.Print pt.x - hw - cell_x, pt.y - hh - cell_y End Sub |
| Всего записей: 57 | Зарегистр. 20-01-2008 | Отправлено: 11:33 03-03-2015 | Исправлено: Winand, 11:44 03-03-2015 |
|