|
|
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Добрый день ! Подскажите, как определить попадание activecell в зеленую область ? Пробую cell.PivotCellType, оно =0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 15:20:52 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 15:31:35 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL) ! Увы ... ваш код отлавливает если я встал в заголовок "Итог План_Продаж", но если я встаю на ячейку с данными, то получаю false. Его же я получаю если встану в ячейку с данными в столбце "План_Продаж". Мне нужно отловить именно итоговые столбцы и строки ( справа и снизу). Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 15:37:51 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 15:58:47 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
big-dukeKL (XL) ! Увы ... ваш код отлавливает если я встал в заголовок "Итог План_Продаж", но если я встаю на ячейку с данными, то получаю false. Его же я получаю если встану в ячейку с данными в столбце "План_Продаж". Мне нужно отловить именно итоговые столбцы и строки ( справа и снизу). Заранее спасибо. Аааа! А я как раз понял обратное :-) Пардон. Может для простоты повесишь файл с примером? KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 16:09:13 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Приложил. Запретная область красного цвета. А предтеча этой ситуации крайне проста. Для записи плановых значений я использую write back в куб. И крайне нежелательно, чтобы юзер что-нить писал в итоговые колонки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 16:59:55 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
big-dukeПриложил. Запретная область красного цвета. А предтеча этой ситуации крайне проста. Для записи плановых значений я использую write back в куб. И крайне нежелательно, чтобы юзер что-нить писал в итоговые колонки. Чегой-то я не въезжаю :-) 1) А почему в приложении PivotTable уничтожена? 2) Разве возможно пользователю редактировать значения полей PivotTable, тем более итоги? 3) Ты что, после создания/обновления PivotTable превращаешь ее в обычный диапазон? 4) Если так, то разве при экспорте обратно твой код изпользует поля итогов? KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 18:21:55 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Кстати, .PivotCell.PivotCellType похоже, что действительно сломано (по крайней мере в Excel2007) Прилагаю пример таблицы с картой типов ячеек KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 18:45:06 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL)Кстати, .PivotCell.PivotCellType похоже, что действительно сломано (по крайней мере в Excel2007) Прилагаю пример таблицы с картой типов ячеекНу почему же сразу сломано? Все там в порядке. Проверь что тип ячейки нулевой и она входит в регион pt.TableRange1 - вот тебе и зеленая ячейка :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 19:33:32 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
White Owl KL (XL)Кстати, .PivotCell.PivotCellType похоже, что действительно сломано (по крайней мере в Excel2007) Прилагаю пример таблицы с картой типов ячеекНу почему же сразу сломано? Все там в порядке. Проверь что тип ячейки нулевой и она входит в регион pt.TableRange1 - вот тебе и зеленая ячейка :) 1) Да нет, для big-duke зеленая ячейка входит в Итоги или Подитоги. 2) Excel VBA Help: NameValueDescriptionxlPivotCellBlankCell9A structural blank cell in the PivotTable. xlPivotCellCustomSubtotal 7A cell in the row or column area that is a custom subtotal.xlPivotCellDataField4A data field label (not the Data button).xlPivotCellDataPivotField8The Data button. xlPivotCellGrandTotal 3A cell in a row or column area that is a grand total.xlPivotCellPageFieldItem6The cell that shows the selected item of a Page field.xlPivotCellPivotField5The button for a field (not the Data button).xlPivotCellPivotItem1A cell in the row or column area that is not a subtotal; grand total; custom subtotal; or blank line. xlPivotCellSubtotal 2A cell in the row or column area that is a subtotal.xlPivotCellValue0Any cell in the data area (except a blank row). раз дефиниция говорит, что тип 3 это любая ячейка в области итоговой строки или столбца (а не только та, которая содержит лейбл), то следует ожидать, что ячеек типа 3 будет несколько больше, и т.д. Разве не так? KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 19:54:59 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Такой, не слишком элегантный, способ: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 20:10:53 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
слегка припудрим [подправим] дурнушку: Sub test() Dim rngRow As Range, rngCol As Range On Error GoTo Done With ActiveCell Set rngCol = Intersect(.PivotTable.TableRange1, .PivotCell.Range.EntireColumn) Set rngRow = Intersect(.PivotTable.TableRange1, .PivotCell.Range.EntireRow) End With With Application Select Case True Case .CountIf(rngCol, "*итог *"), .CountIf(rngRow, "*итог *"): MsgBox ("Intersects") Case Else: MsgBox ("Doesn't Intersect") End Select End With Done: End Sub KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 20:17:08 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Еще попытка: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 20:19:15 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL) ! Саму сводную таблицу приложить не смог - там много данных настоящих, поэтому выложил копи-паст. А решил так как вы и предложили — через поиск вхождения итог . Но все равно спасибо за помощь. Если позволите, то еще вопрос. Есть скажем измерение "Менеджеры". Мне надо на листе ограничить возможность выбора по этому измерению, только одним значением. Это чтобы менеджеры не заходили в чужие отчёты. авторРазве возможно пользователю редактировать значения полей PivotTable, тем более итоги? Да можно, он редактирует столбцы с плановыми значениями. В MS OLAP это называется WriteBack. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 20:38:34 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL)1) Да нет, для big-duke зеленая ячейка входит в Итоги или Подитоги.ааа... виноват, не дочитал до третьего поста. KL (XL)2) Excel VBA Help: NameValueDescription xlPivotCellGrandTotal 3A cell in a row or column area that is a grand total. xlPivotCellSubtotal 2A cell in the row or column area that is a subtotal. раз дефиниция говорит, что тип 3 это любая ячейка в области итоговой строки или столбца (а не только та, которая содержит лейбл), то следует ожидать, что ячеек типа 3 будет несколько больше, и т.д. Разве не так?Конечно не так :) Соглашусь что там кривоватое определение, но все же с точки зрения формальной грамматики английского главенствующее существительное - area, а не row or column. В общем, никто не обещал что жить будет легко :) Но тогда можно отыскать ячейки с итоговыми цифрами так: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 20:43:22 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
White OwlНо тогда можно отыскать ячейки с итоговыми цифрами так: Код: plaintext 1. 2. 3. 4. Да, этот вариант предлагался в одном из форумов, где я искал, но мне он радикально не нравится из-за необходимости тотального "хард-кодинга" имен полей. Я почти-что предпочитаю свой вариант, хотя он тоже не ахти какой элегантный. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 21:00:51 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL) ! А что скажете по моему вопросу : авторЕсть скажем измерение "Менеджеры". Мне надо на листе ограничить возможность выбора по этому измерению, только одним значением. Это чтобы менеджеры не заходили в чужие отчёты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 21:05:14 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
big-dukeKL (XL) ! Саму сводную таблицу приложить не смог - там много данных настоящих, поэтому выложил копи-паст. А решил так как вы и предложили — через поиск вхождения итог . Но все равно спасибо за помощь. Если позволите, то еще вопрос. Есть скажем измерение "Менеджеры". Мне надо на листе ограничить возможность выбора по этому измерению, только одним значением. Это чтобы менеджеры не заходили в чужие отчёты. А как ты строишь запрос и таблицу? Может имеет смысл прямо в SQL-запросе указывать что-то типа: WHERE [Менеджеры]='Иванов Иван Иванович' KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 21:06:42 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL) А как ты строишь запрос и таблицу? Может имеет смысл прямо в SQL-запросе указывать что-то типа: WHERE [Менеджеры]='Иванов Иван Иванович' KL [MVP - Microsoft Excel] Менеджеры это таблица, на основе которой строится измерение для таблицы фактов. И SQL запрос ограничит мне это измерение, но тогда другие менеджеры не увидят ничего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 21:29:04 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Сначала то что получилось у меня: ОПРЕДЕЛЕНИЕ ДИАПАЗОНА ИТОГОВЫХ ЗНАЧЕНИЙ -ВОТ Код: plaintext 1. 2. 3. 4. 5. Потом заметил, что похожее уже было, да к тому же радикально не нравится KL(XL). KL (XL) White OwlНо тогда можно отыскать ячейки с итоговыми цифрами так: Код: plaintext 1. 2. 3. 4. Да, этот вариант предлагался в одном из форумов, где я искал, но мне он радикально не нравится из-за необходимости тотального "хард-кодинга" имен полей. Я почти-что предпочитаю свой вариант, хотя он тоже не ахти какой элегантный. KL [MVP - Microsoft Excel] Всвязи с чем у меня вопрос что означает фраза " тотального "хард-кодинга" имен полей "? З.ы.: на мой взгляд недостаток один, правда сущестывенный, - необходимость выделять ячейки (select). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2007, 23:44:38 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
Deggasad Код: plaintext 1. 2. 3. 4. 5. На самом деле, по задаче, еще нужно учитывать SubTotals, а не только Grand Totals DeggasadВсвязи с чем у меня вопрос что означает фраза " тотального "хард-кодинга" имен полей "? З.ы.: на мой взгляд недостаток один, правда сущестывенный, - необходимость выделять ячейки (select). Имелась ввиду необходимость точного, подробного и жесткого прописывания названий полей, например: "'Row Grand Total'" "'Column Grand Total'" "FirstField[All;Sum]" и т.д. в отличие от "*итог*" правда существует вероятность того, что итоговое поле переименовано с удалением слова "итог" или существуют данные содержащие данный текст, хотя пример мне на ум не приходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2007, 00:31:42 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL)На самом деле, по задаче, еще нужно учитывать SubTotals, а не только Grand Totals Для выложенного примера вроде это самое то. хотя вам виднее. KL (XL)Имелась ввиду необходимость точного, подробного и жесткого прописывания названий полей, например: "'Row Grand Total'" "'Column Grand Total'" "FirstField[All;Sum]" и т.д. в отличие от "*итог*" Вроде ничего сложного написать 2 строки, тем болеее одинаковые как для русского, так и для английского Exel. в отличии от "итог", тем более KL (XL)правда существует вероятность того, что итоговое поле переименовано с удалением слова "итог" или существуют данные содержащие данный текст, хотя пример мне на ум не приходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2007, 08:16:11 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
DeggasadДля выложенного примера вроде это самое то. хотя вам виднее. Не то, что бы нам виднее, в обоих примерах по вертикали стоят по нескольку столбцов Subtotals, а не Grand Total, и для каждого из них надо прописывать свое имя ("'Row Grand Total'" не подойдет) DeggasadВроде ничего сложного написать 2 строки, тем болеее одинаковые как для русского, так и для английского Exel. в отличии от "итог"... Проблема не в сложности, а в жесткости (наличии [нескольких] констант). Это как разница между [A1] и ActiveCell ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2007, 13:55:46 |
|
||
|
Сводная таблица — xlPivotCellGrandTotal
|
|||
|---|---|---|---|
|
#18+
KL (XL) DeggasadДля выложенного примера вроде это самое то. хотя вам виднее. Не то, что бы нам виднее, в обоих примерах по вертикали стоят по нескольку столбцов Subtotals, а не Grand Total, и для каждого из них надо прописывать свое имя ("'Row Grand Total'" не подойдет) DeggasadВроде ничего сложного написать 2 строки, тем болеее одинаковые как для русского, так и для английского Exel. в отличии от "итог"... Проблема не в сложности, а в жесткости (наличии [нескольких] констант). Это как разница между [A1] и ActiveCell У меня вроде всё получается, может я сводную как то не так рисую. Посмотрите файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2007, 14:11:05 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34738961&tid=2182431]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 241ms |
| total: | 396ms |

| 0 / 0 |
