Сообщение #Macros?

Автор Paulson, 8 мая 2015, 14:49

0 Пользователи и 1 гость просматривают эту тему.

Paulson

Всем доброго времени суток!
Использовал функцию STYLE для условного форматирования в отдельных конкретных ячейках. Для скрытия значения именно в этих ячейках. Ничего больше на вскидку не нашел для этого. Типа =...+STYLE(IF(C17=0;"невидимый";"базовый")). Где "невидимый"  - это стиль, где шрифт сделан тем же цветом, что и фон.
Скрытие работало нормально до первой перезагрузки ОО. Потом во всех ячейках с этой функцией стало выдавать #Macros? ...  >:(
Если поменять что-то в формуле ячейки (например делал =...+STYLE(IF(C3=0;"невидимый")) ), то значение возвращается, но опять только до перезагрузки ОО.   :( Если функцию STYLE совсем убрать, то все кажет нормально, в том числе и после перезагрузки.
В инете ничего по этому поводу не нашел... :-\
Подскажите please, в чем собака порылась?  :roll:

rami

У меня функция работает нормально.
Цитата: Paulson от  8 мая 2015, 12:49Если функцию STYLE совсем убрать, то все кажет нормально, в том числе и после перезагрузки.
Ну, так уберите. Можно использовать условное форматирование или функцию IF()
Напишите подробней зачем вам это (функция STYLE) надо?

Paulson

Цитата: rami от  8 мая 2015, 13:48У меня функция работает нормально.

И после перезагрузки ОО тоже?


Цитата: rami от  8 мая 2015, 13:48Ну, так уберите. Можно использовать условное форматирование

Каким образом?

Цитата: rami от  8 мая 2015, 13:48или функцию IF()

Я уже использовал ее.
Цитата: Paulson от  8 мая 2015, 12:49=...+STYLE(IF(C17=0;"невидимый";"базовый"))

Как ещё ее можно использовать, чтобы скрыть значение ячейки?


Цитата: rami от  8 мая 2015, 13:48Напишите подробней зачем вам это (функция STYLE) надо?

Мне нужно, чтобы при значении ноль в определенной ячейке строки в нескольких соседних ячейках только этой же строки значение скрывалось. Как это можно реализовать по другому?

rami

Цитата: Paulson от  8 мая 2015, 14:22И после перезагрузки ОО тоже?
Пробовал меню "Файл" —> "Перезагрузить" , пробовал закрывать офис. Пробовал LibreOffice и Apache OpenOffice 4.0, всё работает.
Цитата: Paulson от  8 мая 2015, 14:22Каким образом?
см. снимок экрана
Цитата: Paulson от  8 мая 2015, 14:22Как ещё ее можно использовать, чтобы скрыть значение ячейки?
Вместо формулы:="расчёт по формулам"+STYLE(IF(C17=0;"невидимый";"базовый"))
Используйте просто: =IF(C17=0;"";"расчёт по формулам")  Расчёт по формулам — это те формулы что вы "утаили"

Paulson

Спасибо за ответ! :)

Цитата: rami от  8 мая 2015, 17:09Пробовал меню "Файл" —> "Перезагрузить" , пробовал закрывать офис. Пробовал LibreOffice и Apache OpenOffice 4.0, всё работает.

Вот ведь странно... чего ж оно от меня хочет... :(

Цитата: rami от  8 мая 2015, 17:09см. снимок экрана

ИМХО не получится. Т.к. в каждой строке нужно подставлять значение ячейки в этой же строке. Т.е. в строке 17 - С17, в строке 18 - С18, и т.д. Или я не понимаю, как делать енто условное форматирование? В справке на этот счет весьма скудно...  :-\

Цитата: rami от  8 мая 2015, 17:09Используйте просто: Код:=IF(C17=0;"";"расчёт по формулам")  Расчёт по формулам — это те формулы что вы "утаили"

Опять ИМХО не получится... В каждой строке берется значение из предыдущей строки и складывается со значениями из разных ячеек текущей (нарастающим итогом). Если в предыдущей будет "", то предыдущего значение типа не будет...  А каждый раз адресовать вручную не получится потому что:
-   строк ОЧЕНЬ много и постоянно добавляются ещё. Т.е. все строки должны быть одинаковы.
-   Временами нужно делать корректировки и вставлять между уже заполненых строк ещё такие же строки...
-   Заполнять буду не я, так что корректировать ссылки некому будет :)


P.S. Сейчас на всяк случай проверил обновления ОО, говорит, что последняя версия.

У меня ест подозрение, что где-то что-то может в настройках ОО не так и по этому макросы можно запустить типа только вручную. Ведь они ж срабатывают после корректировки в ячейке... А функцию STYLE он относит к макросам.  :-\ Лазание по настройкам ничего не дало...

Paulson

Что это за сообщение такое вообще "#Макрос?"?? Я в инете поиском его вообще не нашел...  ???

Paulson

Сейчас открыл LibreOffice - та же фигня...  :roll: >:(

rami

Цитата: Paulson от  9 мая 2015, 01:22ИМХО не получится. Т.к. в каждой строке нужно подставлять значение ячейки в этой же строке. Т.е. в строке 17 - С17, в строке 18 - С18, и т.д. Или я не понимаю, как делать енто условное форматирование? В справке на этот счет весьма скудно...
Условное форматирование состоит из трёх составляющих:
1. диапазон — одна ячейка или диапазон ячеек
2. условие — значение или формула
3. стиль
В вашем случае должно подойти следующее:
1. выделите диапазон применения формата, например, A17:F17 и откройте окно условного форматирования
2. установите условия как на снимке. Особое внимание обратите на знаки доллара — это привязка ссылок к строкам и столбцам. Нам нужна привязка к столбцу C, но не к строке, поэтому убираем $ перед номером строки, перед буквой столбца $ должен быть.
3. я назначил стиль "красный" для наглядности, но вы назначьте "невидимый". Закройте окно.
4. выделите только-что отформатированную строку (A17:F17) и скопируйте форматирование (щёточкой) и выделив столбец "A" от первой строки таблицы до последней(в адресном окне запишите что-то вроде A2:A100 и нажмите Enter), если сделаете всё правильно, то курсор "ведёрко с краской" не должен измениться. Щёлкните "ведёрком" в любую ячейку выделенного столбца "A".
При вставке новой строки условное форматирование распространяется автоматом и на неё.

Возможно проблема с формулами возникает из-за перегруженности таблицы формулами и форматами. Если вы выложите документ, то я посмотрю что можно улучшить.