Всем привет!
Не так давно Директ ввел второй заголовок, а так же изменил ограничение по количеству символов в тексте и первом заголовке.
Это не может не радовать.
Но не все так просто.Раньше чтобы написать длинный заголовок, мы просчитывали длину первого предложения, и, если вписывались в 56 символов (с учетом длины первого заголовка и пробела с двумя дефисами, которые ставятся между заголовками), то наше первое предложение из текста гарантированно попадало в заголовок.
Таким образом у нас получался «длинный заголовок».
Сейчас, казалось бы, ситуация упростилась. Символов в основном и втором заголовках может быть больше. Но вступило в силу другое ограничение — на максимальную длину двух заголовков в пикселях.
Это значит, что если суммарная длина первого и второго заголовка в пикселях будет выше определенной отметки, второй заголовок перестанет показываться.
Так каким же образом нам рассчитать длину наших заголовков в пикселях?
И как узнать, какова максимальная суммарная их длина (в тех же пикселях), которую нельзя превышать?
Пользовательская функция для Excel
Я написал 2 простые функции, которые вы сможете использовать в своих формулах.
- ДлинаТекстаВПикселях — для подсчета длины заголовка в пикселях, в соответствии со шрифтом яндекса, используемым по-умолчанию на поиске. Эта функция поддерживает Русский, Английский, Украинский, цифры и большую часть знаков препинания, которые можно использовать в тексте и заголовках Яндекс.Директ. Есть возможность учесть подсветку текста.
- МаксимумПикселей — просто возвращает ограничение на максимальное количество пикселей для обоих заголовков. Просто проверяйте, чтобы суммарная длина двух заголовков не превышала это значение.
Значение МаксимумПикселей добыто опытным путем, как и ширина каждого символа. Оно может варьироваться, поэтому слегка занижено. Не удивляйтесь, если заметите в интерфейсе, что есть возможность добавить к некоторым заголовкам еще пару знаков. Это нормально. Это связано с тем, что невозможно точно измерить ширину каждого символа.
Примеры использования
Формула для расчета длины текста без подсветки будет выглядеть вот так:
=ДлинаТекстаВПикселях(B4)
, где B4 — адрес ячейки
В случае, если нам нужно посчитать длину текста с подветкой, формула будет следующей:
=ДлинаТекстаВПикселях(B10; «True»)
, где B10 — адрес ячейки, либо текст, который будет подсвечиваться яндексом жирным шрифтом
И пример посложнее, для случая, когда в заголовке встречается точное вхождение ключевого слова:
=ДлинаТекстаВПикселях( ПОДСТАВИТЬ(C3;B3;»»))+ ЕСЛИОШИБКА(ЕСЛИ(ПОИСК(B3;C3) >0;ДлинаТекстаВПикселях( B3;»True»));0)
, где:
C3 — ячейка, содержащая заголовок;
B3 — ячейка, содержащая ключевое слово.
p.s. обратите внимание, что эта формула не будет работать если ключевое слово будет в заголовке в измененном виде (например, в другом падеже)
Где скачать?
Каждое обновление буду скидывать вот сюда:
Версия 1: https://goo.gl/MdY9H5
Версия 1-1: https://goo.gl/MgACzf
И файл с примерами (предварительно установите надстройку):
https://goo.gl/Qi2YSn
Как установить?
Видео по установке и использованию для Excel 2013 (для 2010 в принципе тоже): Как установить надстройку в Excel 2013?
Вот тут есть подробная статья как это сделать в Excel 2010: http://micro-solution.ru/faq/addins_enable
Если операционная система автоматически заблокирует файл как «потенциально опасный», то следует кликнуть по нему правой кнопкой, зайти в «Свойства». И кликнуть по кнопке разблокировать в нижней части появившегося окна.
Вместо заключения
Можно было бы еще больше упростить процесс, позволив в качестве аргументов задавать ключевое слово и заголовок.
А далее, уже внутри функции разбирать их по словам и сравнивать, чтобы понять, будет ли подсветка.
А еще можно было бы добавить сюда немного морфологии, чтобы функция умела учитывать наличие слов в разных падежах (или хотя бы приводить все это дело к лемме и сравнивать по словам).
Спасибо что дочитали до конца! Буду рад отзывам и комментариям.
(обновлено 14-08-18)
Добавлена поддержка спецсимволов, которые поддерживаются директом: ™®©’°²₽
p.s. если найдете ошибку, пишите сюда: https://www.facebook.com/cntxt1
или в Telegram: @cntxt
Функция для Google Spreadsheet
Аналогичная функция для Google Таблиц:
-
Валерия
-
Eugene Yudin
-
-
Инесса Паридуха
-
Eugene Yudin
-
-
Александр Житарюк
-
Eugene Yudin
-
-
Jane Mirnaya
-
Eugene Yudin
-
-
Павел Коган
-
Eugene Yudin
-
Павел Коган
-
Eugene Yudin
-
-
-
-
Дмитрий
-
Eugene Yudin
-
-
Artem Teterin
-
Eugene Yudin
-
-
Artem Teterin
-
Eugene Yudin
-
-
dobrokot
-
Eugene Yudin
-