Генерация штрих кода ean13 в excel

Надстройка Labels позволяет вставлять штрихкоды формата EAN-13 в создаваемые этикетки.

В каждой этикетке может присутствовать один или несколько таких штрихкодов.
 

Для формирования штрихкодов EAN-13, в шаблоне этикетки необходимо:

  1. Вставить в ячейку шаблона подстановочный код вида {5(ean13)}, где 5 — это номер столбца, в котором находятся коды для отображения в штрихкоде.
    Эта запись подразумевает, что программа возьмёт исходные данные из столбца 5, и модифицирует (перекодирует) значение для корректного отображения штрихкода с использованием шрифта ean13.ttf
     
  2. Установить в системе шрифт ean13.ttf
    Для этого скачиваем файл шрифта ean13.ttf, и копируем его в системную папку Fonts

    В настройках программы на вкладке «Дополнительно» присутствует ссылка, при щелке по которой откроется 2 папки: одна со скачанным файлом шрифта, а вторая — системная папка Fonts.

    Вам останется только скопировать файл из одной папку в другую, и шрифт будет установлен в системе.

  3. Назначить ячейке установленный шрифт.
    В данном случае, это шрифт с названием Code EAN13.
    Чтобы вновь установленный шрифт появился в Excel в списке доступных шрифтов, потребуется перезапустить Excel (закрыть и открыть Excel заново)
     
  4. Задать подходящий размер шрифта

Excel – удивительное приложение, умеющее не только электронные таблицы, но и выполнять значительно большее количество действий. Например, генерировать штрих-коды. Для этого нужно воспользоваться специальным файлом, с помощью которого можно создать достаточное количество штрих кодов, и распечатать их.

Содержание

  1. Генератор штрих-кодов
  2. Системы штрих-кодирования товаров, цифры штрих-кода
  3. Скачать генератор штрих-кодов
  4. Установка в Windows шрифта EAN13.ttf
  5. Windows XP, более ранние версии ОС
  6. Windows 7, Windows Vista
  7. Запуск генератора штрих-кодов и его использование
  8. Как самостоятельно сделать генератор штрих-кодов в Excel
  9. Процесс создания штрих-кода в Excel пошагово

Генератор штрих-кодов

Генератор штрих-кодов – маленький исполняемый модуль Excel, который позволяет создавать штрих-коды, основываясь на данных, указанных в таблице. Достаточно его скачать, установить специальный шрифт, и после этого можно приступать к работе. Но для начала нужно в целом понять, что такое штрих-коды и как они работают с научной точки зрения, так сказать.

Системы штрих-кодирования товаров, цифры штрих-кода

Для обычного человека нет принципиальной разницы между разными системами штрихкодирования товаров. Тем не менее, стандартной является та, которая имеет код EAN13. Первые три буквы в начале означают European Article Number, что переводится, как «Европейский Код Товара». Впрочем, эта система используется не только европейскими странами, но и везде. Структура штрих-кода этого типа следующая. В его состав входит тринадцать цифр, которые разделяются на несколько блоков:

  1. Первые три из них указывают на страну производителя. Так, по коду 460-469 мы понимаем, что продукция была изготовлена в России.
  2. Далее идут четыре цифры, которые указывают на производителя этой продукции.
  3. Пять цифр, которые следуют за ними, обозначают код товара по той системе классификации, которая была разработана в организации, которая предлагает этот товар.
  4. Последнее число рассчитывается по определенному механизму и необходима в качестве контрольной.

Создание штрих-кода в Excel

Таким образом, алгоритм штрих-кода очень четкий и нельзя его придумывать самостоятельно. Если попытаться воспользоваться сканером штрих-кодов, он выдаст ошибку, потому что алгоритм разработан исходя из имеющегося стандарта.

Некоторые штрих-коды не классифицируются описанным выше образом. Например, продукция может быть фасованной, и тогда штрих-код начинается с цифры 2. Также достаточно популярным форматом штрих-кодов, который используется для других целей, является QR-код. С его помощью можно зашифровать любую информацию.

Скачать генератор штрих-кодов

Итак, для генерации штрих-кодов в Excel необходимо скачать специальный файл (он полностью бесплатный) и открыть его. В скачанном архиве будет три файла:

  1. Инструкция. Здесь находится инструкция по использованию генератора штрих-кодов. Можно ее не открывать, если внимательно прочитать эту статью.
  2. ean13.ttf. Это шрифт, который нужно установить перед тем, как создать штрих-код.
  3. Генератор штрих кодов.xls – документ, позволяющий генерировать штрих-код.

После скачивания архива, его необходимо распаковать, а потом инсталлироввать шрифт, требуемый для выполнения поставленной нами задачи. Сам генератор штрихкодов находится по этой ссылке. https://www.tirika.ru/files/generator-shtrih-kodov.zip

Установка в Windows шрифта EAN13.ttf

Последовательность действий, необходимая для установки шрифта, несколько отличается. В последних версиях Windows отсутствует специальная кнопка для добавления шрифта, поэтому это нужно сделать другим методом.

Windows XP, более ранние версии ОС

Так, если у Вас операционная система Windows XP, нужно осуществить такие действия:

  1. Нажать на кнопку «Пуск», после чего перейти в Панель Управления. В ней нужно найти кнопку «Шрифты» и нажать на нее. Создание штрих-кода в Excel
  2. Далее перед глазами откроется окно со шрифтами. В нем нужно найти кнопку «Добавить новый шрифт» и выбрать наш файл со шрифтом в папке, куда был распакован скачанный на предыдущем этапе архив.

Windows 7, Windows Vista

Если у Вас Windows Vista и старше, в диалоговом окне выбора шрифтов нет кнопки «Добавить шрифт». Поэтому его нужно скопировать в перечень шрифтов вручную. Для этого надо открыть проводник и перетащить его туда так же, как и в какую угодно другую папку.

Запуск генератора штрих-кодов и его использование

Теперь наш шрифт установлен в Windows. После этого можно приступить к генерации штрих кодов с помощью одноименного файла в распакованном архиве. На этом этапе у пользователя может возникнуть такая проблема.

Создание штрих-кода в Excel

По умолчанию для всех скачанных с интернета документов Excel автоматически выключает макросы, потому что они могут содержать вредоносный код. Дело в том, что программа Excel не только умеет создавать электронные таблицы, а поддерживает полноценное программирование. Язык, с помощью которого разрабатываются эти мини-приложения, называется VBA, что расшифровывается, как Visual Basic for Applications. Собственно, макросом называется программа, написанная на этом языке. С их помощью можно реализовать почти любую хотелку в электронных таблицах. Но некоторые пользователи разрабатывают плохие программные модули, поэтому разработчики Excel отключили их по умолчанию.

Файл, скачанный ранее, также является программой, написанной для Microsoft Excel. Здесь отсутствует вредоносный код, поэтому можно смело разрешать приложению открывать эти исполняемые модули. Если вы все же не очень доверяете макросам, скачанным с неизвестных источников, то можно просто удалить этот файл. Если их не включить, он не будет работать. Если вы доверяете файлу, то активируйте макросы, после чего нужно указать ряд несложных настроек. Создание штрих-кода в Excel

Давайте разберем эти параметры более подробно:

  1. Сколько штрихкодов создать. Здесь нужно указать число кодов, которые надо нам распечатать. Например, нам нужно 100 штук. Столько и вносим в ячейку.
  2. Номер первого штрихкода. После запуска программы рекомендуется писать цифру 1, поскольку именно с этого числа и будет осуществляться нумерация штрих-кодов. Если же ранее уже сделано 100 штук, то можно в качестве первого номера написать число 101, после чего все следующие штрих-коды будут нумероваться с этой цифры.
  3. Префикс штрихкодов. Пользователь может создавать штрих-коды, находящиеся в диапазоне между 200 и 299, которые предназначены для более произвольных маркировок товаров. Например, вы можете предусмотреть для продукции код 200, а для скидочных карт – 299. С помощью этой настройки пользователь может создавать отдельные коды для отдельных типов потребностей клиентов.

После ввода параметров генератора штрихкодов, нам необходимо нажать на кнопку «Создать штрихкоды». После этого будет создан отдельный лист, в котором будут перечислены наши штрихкоды в первой колонке. Все шрифты будут нарисованы с использованием установленного ранее шрифта.

Создание штрих-кода в Excel

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

По какому принципу работает этот генератор? После нажатия пользователем кнопки «Создать штрихкоды» создается новый лист, а одна из колонок заполняется сгенерированными штрих-кодами. Чтобы это сделать, сначала программа обрабатывает ту информацию, которая была указана пользователем на этапе настроек. Чтобы создать первую картинку, сначала берется префикс, который указал пользователь, после чего добавляет к нему первый номер, а потом добавляет определенное количество нулей. Сколько именно вставляется – определяется таким образом, чтобы получилась числовая последовательность в 12 символов. После этого рассчитывается последняя цифра, которые, как мы помним, генерируется по определенному алгоритму.

В результате, появляется 13-символьное число, записываемое в первую ячейку первого столбика листа, который был создан программой, после чего в ячейку B1 она добавляется, а для ячейки выставляется шрифт EAN13. После выполнения этих действий происходит создание второго штрихкода, которое выполняется по такому же алгоритму. Единственное исключение – номер увеличивается на единицу от предыдущего. Если сначала это было 1, то потом – 2, и так далее.

Алгоритм выполняется, пока не будет сгенерировано необходимое количество штрих-кодов. Затем перед пользователем появляется сгенерированный лист, и он может распечатать штрих-коды, которые получились.

Как самостоятельно сделать генератор штрих-кодов в Excel

А что если мы не хотим пользоваться чужими исполняемыми модулями, а хотим уметь делать такие коды самостоятельно? Для этого есть множество методов: создание собственной подпрограммы Excel, специализированный инструмент Active X и скачивание модулей, созданных другими пользователями.

Для начала можем установить специальный шрифт. Есть несколько шрифтов – не только тот, который мы скачивали ранее. Также по этому адресу можно найти специальную надстройку, предназначенную для достижения поставленной задачи. http://www.idautomation.com/font-encoders/word-excel-addin/.

Теперь нам нужно удостовериться, что был активирован Visual Basic. Ну и включить макрос, чтобы не изобретать велосипед, а создавать самостоятельно, но с использованием уже готовых инструментов. Для этого нужно выполнить следующую последовательность действий:

  1. Перейти по адресу http://www.idautomation.com/font-encoders/vba-macro/ и там найти исполняемый файл «VBA Macros for Excel & Access». Создание штрих-кода в Excel
  2. После этого скачиваем файл по ссылке, которая находится на этой странице.
  3. Далее будет скачан архив, который необходимо разархивировать.
  4. После этого открываем редактор Visual Basic с помощью комбинации клавиш Alt + F11. Сверху будет поле, в котором нам нужно нажать на кнопку «Файл». С помощью меню «Импортировать файл» нам нужно найти через специальное диалоговое окно файл, который мы скачали на предыдущих этапах и открыть его. Называется он IDAutomation.bas.
  5. С помощью этого модуля программа добавляет все необходимые компоненты для создания штрих-кодов.
  6. Его можно найти в папке «Модули».
  7. Далее мы переходим в обычный лист, после чего записываем код в ячейку. После этого активируем макрос через пункт «Разработчик» и запускаем его.
  8. Мы сгенерировали 8-значный штрих-код. Есть же и другой макрос,который содержит 13 знаков. Он вставляется и выполняется аналогичным образом.

Дальше нам осталось только распечатать штрих-код и проверить его. Не забудьте перед этим убедиться, что применяются подходящие шрифты.

Процесс создания штрих-кода в Excel пошагово

Есть еще один метод создания штрих-кода в Excel – создание собственного макроса. Также можно добавить элемент Active X. В Excel 2007 версии и новее это делается следующим образом:

  1. Переходим в раздел «Параметры», который находится в меню «Файл». Активируем функцию отображения вкладки «Разработчик» (нужно поставить соответствующую галочку).
  2. Если мы все сделали правильно, перед нами должна появиться вкладка «Разработчик». Там ищем кнопку «Вставить». Появится меню. В нем выбираем «Элементы управления ActiveX». После этого появится еще одно подменю, где нас интересует пункт «Другие элементы управления».
  3. Если соответствующий элемент установлен в компьютере, нам нужно найти объект StrokeScribe Object. После этого делаем левый клик по кнопке «ОК».
  4. Далее необходимо нанести объект на лист. Чтобы это сделать, нужно на нем нарисовать прямоугольник, размеры которого соответствуют размерам объекта, который должен быть на листе.
  5. После этого на странице появится штрих-код, который мы можем настроить через меню «Свойства».

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

Таким образом, эта процедура не такая сложная, как может показаться на первый взгляд. Уже все сделано за пользователя заботливыми программистами. Можно скачать отдельный файл, макрос, который можно использовать в собственной книге или же воспользоваться элементом Active X и создавать собственный макрос. Тем не менее, последний способ является довольно продвинутым, поэтому требует специальных навыков. А чтобы их развить, нужно изучить теорию, которая будет предметом отдельной статьи.

Оцените качество статьи. Нам важно ваше мнение:

формула для генерации ean-13

norkin79

Дата: Воскресенье, 21.02.2021, 16:27 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Добрый день! Помогите создать формулу для генерации ean-13 как на сайте https://service-online.su/text/generator-shtrih-koda/ она полностью меня устраивает. Задача такая, в эксель есть две колонки: штрихкод и артикул, нужно-напечатав в ячейке артикул этот артикул сгенерировался в ean-13 в колонке штрихкод по формату как на сайте (пример: артикул R11010210 превращается в штрихкод 1101021000006).
Заранее благодарю!

 

Ответить

Egyptian

Дата: Воскресенье, 21.02.2021, 18:38 |
Сообщение № 2

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

norkin79,
Здесь обсуждали это.

 

Ответить

norkin79

Дата: Воскресенье, 21.02.2021, 19:12 |
Сообщение № 3

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Наверно я не верно выразился, мне не сами штрихкоды нужны а цифровые значения штрихкода. То есть буквально из артикула сделать цифры штрихкода.
«Для примера рассмотрим расчет контрольной суммы для штрих-кода под номером 215000000001Х, где Х — контрольная сумма. В числе используется 12 цифр, проведем расчет 13 знака:
Сначала сложим все цифры, стоящие на четных местах: 1+0+0+0+0+0+1=2
Полученную сумму умножим на три: 2х3=6
Далее сложим цифры, стоящие на нечетных местах:2+5+0+0+0+0=7
Затем сложим полученные цифры в пункта 2 и 3: 6+7=13
Отбрасываем десятки, получим 3
Наконец, из 10 вычетаем число из п.5 и получаем контрольную сумму: 10-3=7″
Только у меня артикул короче чем 12 цифр, задача как раз состоит в том, что бы формула откидывала букву, основную часть артикула оставляла в штрих коде, подставляла нули вместо не достающих цифр и рассчитывала контрольную сумму.
пример артикул R11010210 превращается в штрихкод 1101021000006 или артикул R11010201 превращается в штрихкод 1101020100004.
Мне не нужно что бы эксель делала штрихкоды для печати (сами полосочки не нужны) только цифры.

 

Ответить

Egyptian

Дата: Воскресенье, 21.02.2021, 20:02 |
Сообщение № 4

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

norkin79,
Так вам же вроде дали решение там же :)
Кстати, по правилам этого форума, да и того тоже кроссы надо обозначать. Вот чуток подправленная формула от Игоря (чтобы тянулась).

Код

=IFERROR(RIGHTB(A2,LEN(A2)-1) & REPT(«0″,13-LEN(A2)) & ROUNDUP(SUMPRODUCT(MID(A2,ROW($A$2:INDEX($A$1:$A$100,LEN(A2))),1)*(MOD(ROW($A$2:INDEX($A$1:$A$100,LEN(A2))),2)*2+1)),-1)-SUMPRODUCT(MID(A2,ROW($A$2:INDEX($A$1:$A$100,LEN(A2))),1)*(MOD(ROW($A$2:INDEX($A$1:$A$100,LEN(A2))),2)*2+1)),»»)

Первый Артикул в А2, формулу в В2 и далее вниз…
З.Ы. В целях уменьшения ресурсопотребляемости — диапазон ограничил до 100 записей. Можно легко увеличить, если нужно.

Сообщение отредактировал EgyptianВоскресенье, 21.02.2021, 20:05

 

Ответить

norkin79

Дата: Воскресенье, 21.02.2021, 21:10 |
Сообщение № 5

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Спасибо за формулу, теперь не могу нормально работать с этим файлом, постоянно зависает и не отвечает (((

 

Ответить

Egyptian

Дата: Воскресенье, 21.02.2021, 21:19 |
Сообщение № 6

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

Выложите файл.

 

Ответить

norkin79

Дата: Воскресенье, 21.02.2021, 21:38 |
Сообщение № 7

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Не знаю что было. Удалил все и заново вписал формулу, сейчас все хорошо. До этого файл открывался примерно минуту. Любое действие вызывало зависание.

 

Ответить

norkin79

Дата: Пятница, 26.02.2021, 21:30 |
Сообщение № 8

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Egyptian, Добрый вечер! Огромное спасибо за формулу! Облегчили мне жизнь )) Не подскажите, что нужно поменять в Вашей формуле что бы добиться того же результата (тот же штрих код), если артикул немного видоизмениться: с R11010210 на 1R1010210? Спасибо!

 

Ответить

Egyptian

Дата: Пятница, 26.02.2021, 23:18 |
Сообщение № 9

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

norkin79,
Как-то так.

Код

=IFERROR(RIGHTB(SUBSTITUTE(A4,»R»,»»,1),LEN(A4)-1) & REPT(«0″,13-LEN(A4)) & ROUNDUP(SUMPRODUCT(MID(A4,ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),2)*2+1)),-1)-1-SUMPRODUCT(MID(A4,ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),2)*2+1)),»»)

 

Ответить

Egyptian

Дата: Пятница, 26.02.2021, 23:21 |
Сообщение № 10

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

norkin79,
Формула не моя, а Игоря :) Я ее лишь слегка подправил.

артикул немного видоизмениться: с R11010210 на 1R1010210? Спасибо!

Как-то так.

Код

=IFERROR(RIGHTB(SUBSTITUTE(A4,»R»,»»,1),LEN(A4)-1) & REPT(«0″,13-LEN(A4)) & ROUNDUP(SUMPRODUCT(MID(A4,ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),2)*2+1)),-1)-1-SUMPRODUCT(MID(A4,ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(A4))),2)*2+1)),»»)

 

Ответить

norkin79

Дата: Пятница, 26.02.2021, 23:55 |
Сообщение № 11

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Egyptian, Теперь нужно артикул вписывать в А4? а саму формулу так же в В2?

 

Ответить

norkin79

Дата: Пятница, 26.02.2021, 23:57 |
Сообщение № 12

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Egyptian, Хм, в генераторе штрих котов контрольная сумма другая: артикул 2R2110401 штрихкод 2211040100003
Ваша формула выдает 2211040100004
Причем первая формула так же считает как генератор артикул R22110401 штрихкод 2211040100003
а с артикулами R11010210 и 1R1010210 и первая и вторая формула считают одинаково 1101021000006

Сообщение отредактировал norkin79Суббота, 27.02.2021, 00:05

 

Ответить

Egyptian

Дата: Суббота, 27.02.2021, 00:38 |
Сообщение № 13

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

norkin79, Добавил определение впереди стоящего номера до 4-х. Артикул должен быть в ячейке D4. Можете переправить на другие ячейки.

Код

=IFERROR(—RIGHTB(SUBSTITUTE(D2,»R»,»»,1),LEN(D2)-1) & REPT(«0″,13-LEN(D2)) & ROUNDUP(SUMPRODUCT(MID(D2,ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),2)*2+1)),-1)-LOOKUP(—LEFT(D2,1),{1,2,3,4},{1,2,3,4})-SUMPRODUCT(MID(D2,ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),2)*2+1)),»»)


Бегло проверил на сайте, вроде правильно. С артикулами где R стоит впереди эта формула несовместима. Наверное можно заморочиться и сделать что-то универсальное, но мне если честно неохота :)

Добавлено.
Хотя нет, все таки заморочился, проверяйте универсальную формулу))

Код

=IFERROR(IF(LEFTB(D2)=»R»,RIGHTB(D2,LEN(D2)-1),LEFTB(D2)&RIGHTB(D2,LEN(D2)-2)) & REPT(«0″,13-LEN(D2)) & ROUNDUP(SUMPRODUCT(MID(D2,ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),2)*2+1)),-1)-IF(LEFTB(D2)=»R»,1,LOOKUP(—LEFT(D2,1),{1,2,3,4},{1,2,3,4}))-SUMPRODUCT(MID(D2,ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),1)*(MOD(ROW($A$3:INDEX($A$1:$A$100,LEN(D2))),2)*2+1)),»»)

Поддерживает до 4 номеров впереди R.

Сообщение отредактировал EgyptianСуббота, 27.02.2021, 01:00

 

Ответить

norkin79

Дата: Суббота, 27.02.2021, 01:30 |
Сообщение № 14

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Egyptian, Хех )) теперь наоборот 2211040100004=R22110401, а 2211040100003=2R2110401

 

Ответить

Egyptian

Дата: Суббота, 27.02.2021, 01:47 |
Сообщение № 15

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

norkin79,
Выложите файл с несколькими правильными артикулами/кодами и я посмотрю в чем загвоздка.

 

Ответить

norkin79

Дата: Суббота, 27.02.2021, 02:33 |
Сообщение № 16

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Проверил несколько артикулов, составил таблицу, если допустим взять артикул R41110407 и на конце его будет 07 (10, 17, 24, 31), то штрихкод выходит формата 411104070000-1, если 4R1110407 то 411104070000-4

К сообщению приложен файл:

1976429.xlsx
(11.1 Kb)

 

Ответить

Egyptian

Дата: Суббота, 27.02.2021, 04:05 |
Сообщение № 17

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

Новый вариант с кучей костылей. Работает со всеми номерами, что были в файле (выделено фиолетовым), рядом проверенные через сайт номера, но честно говоря почти уверен, что 100% гарантии, что ничто и нигде не вылезет наверное не даст и сам автор))

Код

=IFERROR(IF(LEFTB(D2)=»R»;RIGHTB(D2;LEN(D2)-1);LEFTB(D2)&RIGHTB(D2;LEN(D2)-2)) & REPT(«0″;13-LEN(D2)) & ROUNDUP(SUMPRODUCT(IFERROR(MID(D2;ROW($A$2:INDEX($A$1:$A$100;LEN(D2)));1)*(MOD(ROW($A$2:INDEX($A$1:$A$100;LEN(D2)));2)*2+1);0));-1)-IF(LEFTB(D2)=»R»;;LOOKUP(—LEFT(D2;1);{1;2;3;4;5};{1;2;3;4;5}))-SUMPRODUCT(IFERROR(MID(D2;ROW($A$2:INDEX($A$1:$A$100;LEN(D2)));1)*(MOD(ROW($A$2:INDEX($A$1:$A$100;LEN(D2)));2)*IFERROR(LOOKUP(—LEFT(D2;1);{4;5};{1;1});2)+IFERROR(LOOKUP(—LEFT(D2;1);{4;5};{0,5;0,5});1));0))-IFERROR(IF(—LEFT(D2;1)=4;10;0);0);»»)

К сообщению приложен файл:

shtrix.xlsx
(12.8 Kb)

 

Ответить

norkin79

Дата: Суббота, 27.02.2021, 12:58 |
Сообщение № 18

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Egyptian, Добрый день! Спасибо за труды, но (((… например артикул 3R1110407 выдает 311104070000-3, артикул 5R1110411 показал совсем длинное число 51110411000013,5; с этим артикулом 5R1110410 только если на конце 10 выдает правильное значение, если любая другая (проверял от 01 до 12) выдает количество цифр больше и где то с запятой.

 

Ответить

norkin79

Дата: Суббота, 27.02.2021, 13:03 |
Сообщение № 19

Группа: Пользователи

Ранг: Новичок

Сообщений: 22


Репутация:

0

±

Замечаний:
0% ±


Может быть построить как то формулу которая исключала бы буквы, а цифры складывала как в формуле расчета штрихкода из третьего поста.
ПС артикул будет постоянный формата ХRХХХХХХХ (1R2345678) то есть восемь цифр и одна буква на втором месте.

 

Ответить

Egyptian

Дата: Суббота, 27.02.2021, 15:12 |
Сообщение № 20

Группа: Проверенные

Ранг: Обитатель

Сообщений: 473


Репутация:

162

±

Замечаний:
0% ±


Excel 2013/2016

ПС артикул будет постоянный формата ХRХХХХХХХ (1R2345678) то есть восемь цифр и одна буква на втором месте.

Ну если постоянный то можно без извращений))

Код

=IFERROR(LEFTB(E2)&RIGHTB(E2,LEN(E2)-2) & REPT(«0″,13-LEN(E2)) & ROUNDUP(SUMPRODUCT(MID(REPLACE(E2,2,1,LEFTB(E2)),ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),1)*(MOD(ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),2)*2+1)),-1)-SUMPRODUCT(MID(REPLACE(E2,2,1,LEFTB(E2)),ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),1)*(MOD(ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),2)*2+1)),»»)

Ну и еще попытка универсальной формулы напоследок)) Алгоритм неизменен.

Код

=IFERROR(IF(LEFTB(E2)=»R»,RIGHTB(E2,LEN(E2)-1),LEFTB(E2)&RIGHTB(E2,LEN(E2)-2)) & REPT(«0″,13-LEN(E2)) & ROUNDUP(SUMPRODUCT(MID(IF(LEFTB(E2)=»R»,E2,REPLACE(E2,2,1,LEFTB(E2))),ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),1)*(MOD(ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),2)*2+1)),-1)-SUMPRODUCT(MID(IF(LEFTB(E2)=»R»,E2,REPLACE(E2,2,1,LEFTB(E2))),ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),1)*(MOD(ROW($A$2:INDEX($A$1:$A$100,LEN(E2))),2)*2+1)),»»)

К сообщению приложен файл:

9321182.xlsx
(13.4 Kb)

Сообщение отредактировал EgyptianСуббота, 27.02.2021, 15:49

 

Ответить

При ведении учета в торговле, создании личных каталогов используются штрих-коды. Для их последующего считывания существуют сканеры. А создать можно с помощью программных продуктов разработанных специально для Excel.

Как сделать штрих-код в Excel

Сформировать генератор штрих-кодов в Excel можно разными способами: с помощью макроса, инструмента ActiveX и разработанных модулей. Рассмотрим на примере одного из специализированных продуктов. Он является абсолютно бесплатным. Поэтому расценивать статью как рекламную нельзя.

Самый простой способ это установить в Windows шрифты штрих кодов и тогда они буду доступны в Excel на панели «Главная»-«Шрифт».

Выполнить.

Пару шрифтов-штрихкодов можно скачать в конце статьи

Так же можно скачать по адресу http://www.idautomation.com/font-encoders/word-excel-addin/ надстройку для ввода штрихкодов в программе Excel или Word.

Выполнить.

Перед началом работы убедитесь, что в программе Excel доступен Visual Basic. А в настройках безопасности – сняты ограничения для макросов.

  1. Откройте сайт http://www.idautomation.com/font-encoders/vba-macro/. В списке бесплатных продуктов найдите «VBA Macros for Excel & Access». (Данный файл также можно скачать в конце статьи).
  2. VBA Macros for Excel.

  3. Нажмите на ссылку и скачайте продукт на свой компьютер.
  4. Программа стачивается архивом. Разархивируйте файл с названием «BarcodeFunctions.zip».
  5. Import.

  6. Одновременным нажатием клавиш Alt + F11 вызовите редактор Visual Basic. В верхнем поле нажмите кнопку File. Нам нужно импортировать загруженный из Интернета код.
  7. IDAutomation.bas.

  8. Находим скачанный файл. В папке Windows VBA выбираем IDAutomation.bas. Импортированный модуль «добавляет» в книгу Excel шрифты и функции, чтобы преобразовывать набор цифр и букв в штрих-код.
  9. После импорта он появляется в папке «Модули».
  10. Модули.

  11. Далее нужно выйти из редактора Visual Basic. В ячейку A2 ввести пробный код (например, 11223344) и нажать «Разработчик»-«Макрос».
  12. Выполнить.

  13. В появившемся меню выбираем макрос для генерации 8-ми значного штрихкода и нажимаем «выполнить».

Следующий этап – печать штрих-кода из Excel для проверки правильности кодировки. То есть напечатать коды можно только тогда, когда используются специальные шрифты.

Еще один способ формирования штрих-кодов – написать макрос (реализовано тут).

Чтобы добавить штрих-код в Excel 2007, нужно выполнить следующую последовательность:

  1. Нажать кнопку «Файл» — «Параметры». В основных параметрах – поставить галочку «Показывать вкладку «Разработчик» на ленте.
  2. Вкладка «Разработчик». Находим кнопку «Вставить» — «Элементы управления ActiveX». Выбираем «Другие элементы управления».
  3. В открывшемся меню находим StrokeScribe Objekt. Нажимаем ОК. Рисуем мышью прямоугольник в любом месте страницы.
  4. Появляется штрих-код. Открываем меню правой кнопки мыши. «Свойства». Alphabet – для выбора типа штрих-кода.

Чтобы нарисованный код «заработал» (адаптировался под введенные пользователем цифры), нужно писать макрос.



Как подключить сканер штрих-кода к Excel

Процесс подключения зависит от модели сканера и его возможностей. Иногда ничего делать не нужно. Достаточно подключить сканер к компьютеру, используя включение «разъем клавиатуры», и открыть во время работы книгу Excel (должен быть установлен USB-драйвер сканера).

Сканер не воспринимает штрих-код как графический объект – он преобразует его в набор цифр. Во время работы в активную ячейку вставляется числовое значение, считываемое устройством, и срабатывает перевод строки. Детектор посылает символ Enter, что заставляет курсор перейти в следующую строку.

Ряд моделей сканеров работает как клавиатура. При вводе кода данные сразу попадают в активную ячейку листа.

Скачать макрос генератор штрих кодов в Excel

Скачать шрифты штрих-кодов

Для ряда устройств требуется специальная надстройка: стандартное меню не справится с задачей.

Вы также можете подписывать множество других форматов. Ниже приведен полный список поддерживаемых форматов файлов.

BMP (Bitmap Image File)

CDR (CorelDRAW Image File)

CMX (CorelDRAW Metafile Exchange Image File)

CSV (Comma Separated Values File)

DOC (Microsoft Word Document)

DOCM (Word Open XML Macro-Enabled Document)

DOCX (Microsoft Word Open XML Document)

DOT (Word Document Template)

DOTM (Word Open XML Macro-Enabled Document Template)

DOTX (Word Open XML Document Template)

GIF (Graphical Interchange Format File)

JPEG (JPEG Image)

JPG (JPEG Image)

ODP (OpenDocument Presentation)

ODS (OpenDocument Spreadsheet)

ODT (OpenDocument Text Document)

OTP (OpenDocument Presentation Template)

OTS (OpenDocument Spreadsheet Template)

OTT (OpenDocument Document Template)

PDF (Portable Document Format File)

PNG (Portable Network Graphic)

POTM (PowerPoint Open XML Macro-Enabled Presentation Template)

POTX (PowerPoint Open XML Presentation Template)

PPS (PowerPoint Slide Show)

PPSM (PowerPoint Open XML Macro-Enabled Slide)

PPSX (PowerPoint Open XML Slide Show)

PPT (PowerPoint Presentation)

PPTM (PowerPoint Open XML Macro-Enabled Presentation)

PPTX (PowerPoint Open XML Presentation)

RTF (Rich Text Format File)

SVG (Comma Separated Values File)

TIF (Tagged Image File)

TIFF (Tagged Image File Format)

WEBP (WebP Image)

WMF (Windows Metafile)

XLSB (Excel Binary Spreadsheet)

XLSM (Excel Open XML Macro-Enabled Spreadsheet)

XLSX (Microsoft Excel Open XML Spreadsheet)

XLTM (Microsoft Excel Macro-Enabled Template)

XLTX (Excel Open XML Spreadsheet Template)

Понравилась статья? Поделить с друзьями:
  • Генерация формул в excel
  • Генерация текстов в excel
  • Генерация текста в word
  • Генерация таблицы excel в php
  • Генерация случайных чисел с помощью excel