Excel это не сложно
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
19.04.2024, 12:27:13

Войти
На форуме добавлена возможность подписки на RSS-ленты любого раздела форума. Подписаться можно, нажав на иконку RSS , расположенную левее наименования раздела.
33 242 Сообщений в 5 457 Тем от 6 758 Пользователей
Последний пользователь: Сергей2662
*
Перейти на сайт Хитрости Надстройка MulTEx Обучающие тренинги Наша группа ВКонтакте
Правила форума Начало Помощь Поиск Календарь Войти Регистрация Выйти
+  Excel это не сложно
|-+  Основные форумы
| |-+  Вопросы по работе в Google-таблицах
| | |-+  Как скрыть (зашифровать формулы) в гугл таблице ?
Страниц: [1]   Вниз
Печать
Автор Тема: Как скрыть (зашифровать формулы) в гугл таблице ?  (Прочитано 3294 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Максим Пожарский
Новичок
*

Репутация: +0/-0
Офлайн Офлайн

Сообщений: 29


Просмотр профиля E-mail
« : 24.12.2022, 10:44:00 »

Всем привет! Требуется помощь! Подскажите, пожалуйста, есть ли какой нибудь способ скрывать формулы в google sheets ?
На просторах рунета нашёл только способ через importrange, но этот вариант не подходит, так как таблица не так проста. Написан калькулятор расчёта. Я предоставляю доступ другим сотрудникам к калькулятору, но как сделать чтобы они формулы не видели ? Пробовал скрыть панель формул, но при доступе редактора любой сотрудник может открывать эту панель и видеть формулы. Если защищать диапазон с формулами, то калькулятор не производит расчёт, так как расчёт производиться с помощью кнопки в меню.

Заранее благодарен за помощь! Отдельное спасибо Дмитрию Щербакову за помощь с кнопками в меню, получилось круто, лучше чем с картинками
Записан
Дмитрий Щербаков(The_Prist)
Администратор
Ветеран
*****

Репутация: +485/-0
Офлайн Офлайн

Сообщений: 5 831



Просмотр профиля WWW
« Ответ #1 : 24.12.2022, 18:05:00 »

Насколько я знаю такой возможности в Google просто нет.
Поэтому, предположу, что можно просто в тех скриптах, которые производят изменения добавить снятие/установку защиты.
Тут опять же - если защита установлена только на конкретные ячейки с формулам - они вроде бы должны пересчитываться, хоть и защищены.
Ну и вариант с importrange тоже не так плох. Придется настраивать перенос только ячеек с формулами с расчетного листа, а на расчетном листе явно делать завязки на лист, куда импортируется и где ввод данных происходит. Но на мой взгляд это вообще оптимальный вариант.
Записан

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Пункты приёма Спасибов:    -41001332272872  -R298726502453
Максим Пожарский
Новичок
*

Репутация: +0/-0
Офлайн Офлайн

Сообщений: 29


Просмотр профиля E-mail
« Ответ #2 : 24.12.2022, 18:24:50 »

Ну и вариант с importrange тоже не так плох.

Там дело в том, что формулы меняются в зависимости от нажатия кнопки, то есть с помощью function к каждой кнопке в меню идет привязка определённой формулы.
Код: (vb)
function myFunction_Button1() {  
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRange('G7:G8').activate();
  spreadsheet.getCurrentCell().setFormula('=IFERROR(IF(COUNTIF(B7:F7;"");"";IF(INT(E7+F7-3/24-C7-D7-VLOOKUP(B7;UTC!A2:B1640;2;)/24)<0;"NoSho";INT(E7+F7-3/24-C7-D7-VLOOKUP(B7;UTC!A2:B1640;2;)/24)));"Введите данные в UTC-")\n');


Я пробовал через importrange, но те же кнопки уже отпадают, которые в меню, ими уже не воспользоваться, а если чисто в ячейках оставить нужные формулы и чуть подредачить калькулятор, то importrange сами формулы не тянет.

А по поводу защиты, подскажите, пожалуйста, что вы имеете ввиду ? Я просто не так давно со скриптами работаю, может чего не знаю..
Записан
casag
Новичок
*

Репутация: +1/-0
Офлайн Офлайн

Сообщений: 9


Просмотр профиля E-mail
« Ответ #3 : 25.12.2022, 11:56:33 »

Максим Пожарский. Добрый день. Не знаю, как у вас там в файле, все устроено, но может быть вам поможет вот это https://t.me/google_sheets/753
Записан
Максим Пожарский
Новичок
*

Репутация: +0/-0
Офлайн Офлайн

Сообщений: 29


Просмотр профиля E-mail
« Ответ #4 : 25.12.2022, 12:31:49 »

На первый взгляд то что нужно вроде! Я же правильно понимаю, что мне нужно создать второй лист google sheets (дубликат), с теми же скриптами, которые и в основной таблице ? И в дубликате прописать данный код, который вы предложили. Мне самое главное, чтобы сотрудники редактировать не могли те ячейки, где формулы, но это даже не самое главное, главное чтобы формулы было не видно им! Если этот метод поможет буду вам очень благодарен!!!

Я только пока не совсем понимаю, как и куда его вписать этот скрипт)
Записан
casag
Новичок
*

Репутация: +1/-0
Офлайн Офлайн

Сообщений: 9


Просмотр профиля E-mail
« Ответ #5 : 25.12.2022, 13:49:54 »

В комментариях под описанием есть видео, как это работает. Общая схема такая. Берете две книги. В первой все ваши макросы, во второй никаких макросов, формул - только листы с данными. При редактировании определенной ячейки во второй  книге(например ввод слова "рассчитать") запускается макрос из первой книги, проводится расчет и результат выводится в конкретную ячейку второй книги. Но, нужно смотреть. как у вас это организовано.
    Можно проще. в первую книгу записываете все формулы, а во вторую макрос, который берет формулу из первой книги, вставляет в нужную ячейку второй книги и затем удаляет формулу из ячейки, оставляя только полученное значение. Но этот способ не надежный, потому что этим же макросом продвинутые сотрудники, путем несложной манипуляции с кодом, легко получат доступ к формуле. С другой стороны продвинутому сотруднику проще самому написать формулу , чем воровать ее. Выбор за вами.
« Последнее редактирование: 25.12.2022, 13:53:03 от casag » Записан
Страниц: [1]   Вверх
Печать
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2011, Simple Machines Valid XHTML 1.0! Valid CSS!
Яндекс.Метрика Рейтинг@Mail.ru