Страницы: 1
RSS
Генератор кодов EAN-13 и EAN-8, EAN-13 работает, EAN-8 - нет.
 
Добрый вечер. Нашёл такую формулу для генерации кода в ячейку. Замечательно работает. Но если цифр меньше, а бывает и 8 и 12, то сократив формулу, получаем код, который не читается сканером и по виду отличается от исходного. Приложил файл, всего два кода, для EAN-8 ещё и оригинал в виде картинки в ячейке. Где ошибка? Как уменьшить формулу? Если не уменьшать - не работает с EAN-8 вообще, а неумело сокращённая - работает неправильно..
 
vet4,  шрифты необходимые не системные, не всем они нужны и не у всех установлены, а  для проверки они необходимы.
По вопросам из тем форума, личку не читаю.
 
Цитата
написал:
шрифты необходимые не системные,
Понял. Поднял древнюю тему, может автор формулы отзовётся.
 
Не искал шрифт и не проверял , но посмотрел формулы, как минимум по быстрому упростить можно
до
=CONCATENATE(MID(C1;1;1);
CHAR(VALUE(MID(C1;2;1))+65);
CHAR(VALUE(MID(C1;3;1))+75-10*(VALUE(MID(C1;1;1))<4));
CHAR(VALUE(MID(C1;4;1))+75 -ISNUMBER(FIND(MID(C1;1;1);"0478"))*10);
CHAR(VALUE(MID(C1;5;1))+75-ISNUMBER(FIND(MID(C1;1;1);"01459"))*10 );
CHAR(VALUE(MID(C1;6;1))+75-ISNUMBER(FIND(MID(C1;1;1);"02567"))*10 );
CHAR(VALUE(MID(C1;7;1))+75-ISNUMBER(FIND(MID(C1;1;1);"03689"))*10 );
"*";CHAR(VALUE(MID(C1;8;1))+97);"+")

или
=LEFT(C1)&
CHAR(VALUE(MID(C1;2;1))+65)&
CHAR(VALUE(MID(C1;3;1))+75-10*(LEFT(C1)-4<0))&
CHAR(VALUE(MID(C1;4;1))+75 -ISNUMBER(FIND(LEFT(C1);"0478"))*10)&
CHAR(VALUE(MID(C1;5;1))+75-ISNUMBER(FIND(LEFT(C1);"01459"))*10 )&
CHAR(VALUE(MID(C1;6;1))+75-ISNUMBER(FIND(LEFT(C1);"02567"))*10 )&
CHAR(VALUE(MID(C1;7;1))+75-ISNUMBER(FIND(LEFT(C1);"03689"))*10 )&
"*"&CHAR(VALUE(MID(C1;8;1))+97)&"+"


можно поиграть с новыми функциями Excel, будет еще короче.

Однако что значит бывает 8 и 12?  может быть только 8 или 13

:-) у соседей с 16го года валяется для 13
По вопросам из тем форума, личку не читаю.
 
БМВ, Спасибо огромное!  Автор моей формулы пропал с форума ещё в 2016 году.
Проверил, но то же самое, как и я сам обрезал до 8. Рисует такой же ШК, но сканер его не понимает и он отличается от оригинала. Почему - не понимаю, Точно такой же принцип для 13, но для 8 рисует не так.
Изменено: vet4 - 09.07.2024 18:47:45 (P.S.)
Страницы: 1
Наверх