Штрихкод в Excel Code 128

Поділитися
Вставка
  • Опубліковано 14 сер 2022
  • Штрихкод Code 128
    К видео с ценниками ( • Ценники своими руками ... ) коллеги справедливо заметили, что если просто сделать шрифт Code 128 - этого недостаточно для того чтобы сканер этот штрихкод прочел.
    Я конечно заподозрил, что здесь чтото не чисто и проверил.
    Проверка и дальнейший разбор подтвердил, что не чисто там всё.
    Как оказалось штрихкоду недостаточно выглядеть, как штрих-код. Ему помимо кодируемой информации оказывается нужен еще и стартовый символ, контрольный ключ и закрывающий символ.
    Все мануалы ведут на формирование каких-то картинок методом родов ежа, либо вовсе являются платными и тоже выдают картинки.
    Был момент слабости и мысль "взять и забить" но нет.
    Вот этот пост придал мне силы: blogs.klerk.ru/users/1911762/...
    В деле мне помог шрифт, взятый здесь: ru.fonts2u.com/code-128.%D1%8...
    И, спустя 1000 нецензурных слов, десятка чашек кофе и 12 часов времени мне таки удалось победить этого страшного дракона.
    Функция заняла всего 8 строчек кода.
    'Замените надпись "больше или равно" на соответствующие символы.
    Отдельное СПАСИБО пользователю Александр (он в закрепленном комментарии) за зоркий глаз, светлый ум и внесенные корректировки.
    Function Code128(Str As String)
    cs = 104
    For i = 1 To Len(Str)
    s = Asc(Mid(Str, i, 1))
    cs = cs + (s + IIf(s БОЛЬШЕ= 32, -32, 64)) * i
    Next i
    sh = cs Mod 103
    sh = sh + IIf(sh БОЛЬШЕ 94, 100, 32)
    Code128 = ChrW(204) & Str & ChrW(sh) & ChrW(206)
    End Function

КОМЕНТАРІ • 49

  • @EvgenieM
    @EvgenieM Рік тому

    Спасибо Вам огромное! За видео, код и ту огромную работу которую вы проделали. Весь восторг не описать.

  • @user-ov5yi8vy9o
    @user-ov5yi8vy9o Рік тому +1

    Спасибо вам большое, два месяца назад задумался о такой теме м недавно начал реализовывать. Столкнулся с проблемами и если бы не ваше видео, то ещё бы пришлось разбираться. Спасибо!!!!!!!

  • @user-fo1vu1dk5j
    @user-fo1vu1dk5j 10 місяців тому

    Огромное спасибо! Найдя решение Вы сэкономили мне массу времени

  • @user-pe6jd6rp9f
    @user-pe6jd6rp9f 11 місяців тому

    Супер! Огромное Вам спасибо!
    Какой же Вы Молодец!👍👏👏👏

  • @user-hc2lj6lf6z
    @user-hc2lj6lf6z 9 місяців тому

    Спасибо Вам огромное!!! Все работает!!! Объеденил с ценниками.

  • @user-vx9gl7vs1r
    @user-vx9gl7vs1r 4 місяці тому

    Спасибо Павел ! Сэкономил кучу времени !! С меня лайк и подписка )

  • @jilaya_zona
    @jilaya_zona Рік тому

    Блин, какой же ты лучистый человек

  • @RRedsOLOLO
    @RRedsOLOLO Рік тому +1

    красота, большое спасибо! =)

  • @user-cd9fs6jo9h
    @user-cd9fs6jo9h 6 місяців тому

    Спасибо добрый человек!!!

  • @arisha39
    @arisha39 Рік тому

    это просто чудо!!!

  • @dykomenko
    @dykomenko 7 місяців тому +1

    Лучшее решение из всех существующих
    Спасибо!

    • @sales-mania
      @sales-mania 7 місяців тому

      *КАК СОЗДАТЬ ШТРИХ КОД В Excel СМОРИ ТУТ* ua-cam.com/video/Ls_7tYwvQJM/v-deo.html

  • @denispotapov9828
    @denispotapov9828 Рік тому

    Паша жжет, как всегда)

  • @user-lu2od4of2w
    @user-lu2od4of2w Рік тому

    Павел, здравствуйте. Ваши видео и решение вопросов великолепны!
    Подскажите, пожалуйста, как по такому же принципу из ячейки сгенерировать DataMatrix код с использованием картинок или без них? Чтобы получить код в нужную ячейку.

  • @funnyday7124
    @funnyday7124 Рік тому

    Спасибо!

  • @Victor-Vladimirovich
    @Victor-Vladimirovich Рік тому

    спасибо большое

  • @user-hs3ys6jd8p
    @user-hs3ys6jd8p Рік тому +2

    красавчик

  • @sp2opt
    @sp2opt Місяць тому

    Огромное тебе спасибо!!!

    • @user-yr2gp5yt5p
      @user-yr2gp5yt5p 26 днів тому

      Напишите ,пжлст, куда вставили код, а то у меня не работает

    • @sp2opt
      @sp2opt 26 днів тому +1

      @@user-yr2gp5yt5p в Excel жмешь левый Alt+F11, открываешь VBA, слева в VBAProject по правому клику Insert - Module. Вот туда и пишешь код. Потом в ячейке вызываешь функцию.

    • @user-yr2gp5yt5p
      @user-yr2gp5yt5p 26 днів тому

      @@sp2opt Спасибо

  • @alekseidenisenkov2627
    @alekseidenisenkov2627 Рік тому

    Есть еще одно НО - в штрих-код могут вшиваться и другие команды (не только Старт, Стоп и КС), например переход на другой диапазон (А, В, С)

  • @user-gt9sp4kl9q
    @user-gt9sp4kl9q 9 місяців тому

  • @user-wx9sh5xc8y
    @user-wx9sh5xc8y 8 місяців тому

    Подскажите. Возможно ли изменить скрипт, что бы под шрихкодом отображались буквы и цифры которые в нём закодированы. Пробовал ваш скрипт использовать со шрифтом Libre Barcode 128 Text. Всё вроде работает, но в конце отображается лишний символ которого в тексте для штрихкода нет. Сканер считывает штрихкод без ошибок и лишний символ не учитывает.

  • @kuatle
    @kuatle Рік тому

    5:00 «Сидел с линейкой, прикидывал. Я так не развлекался наверное...
    Давно я так не развлекался» 😂

    • @Pavel_Taranukha
      @Pavel_Taranukha  Рік тому

      Да с года 1995 наверное когда нужна была функция с числом прописью. Это сейчас их полно в интернете, а тогда и интернета не было)

  • @rasimnabizade5571
    @rasimnabizade5571 8 місяців тому

    Здравствуйте. Большое спасибо за данное видео, голову ломал почему шрифт выдает штрихкод отличный от шк-генераторов и не читается сканером. Все сделал как у вас. Заработало. Но столкнулся с одной проблемой и не знаю почему так. Буду премного благодарен если подскажите. Проблема такая что например ввожу баркод WB_1117418268 и среди черточек всплывает буква Г.
    И таких комбинаций при котором всплывает буквы много. Как это можно исправить?

  • @online-ocenka
    @online-ocenka Рік тому +2

    Здравствуйте! Спасибо за информацию. А есть генератор QR coda?

    • @Pavel_Taranukha
      @Pavel_Taranukha  Рік тому

      Есть, но там без картинок точно не обойтись

  • @user-lb3ku9ty7w
    @user-lb3ku9ty7w 27 днів тому

    Попытался сделать по вашей системе,
    у меня не получилось решил посидеть и немного изменить код.
    Вот то к чему я пришёл
    Function Code128B(inputStr As String) As String
    cs = 104
    For i = 1 To Len(inputStr)
    s = Asc(Mid(inputStr, i, 1))
    cs = cs + (s + IIf(s >= 32, -32, 64)) * i
    Next i
    sh = cs Mod 103
    sh = sh + IIf(sh > 94, 100, 32)

    result = ChrW(204) & inputStr & ChrW(sh) & ChrW(206)
    Code128B = result
    End Function

  • @shifcre
    @shifcre 4 місяці тому

    Здравствуйте! Когда я печатаю через обычный принтер, то штрих-код превращается в символы-цифры(
    Как с этим справиться?

  • @alekseidenisenkov2627
    @alekseidenisenkov2627 Рік тому

    Есть еще одно НО, в этот штрих-код могут вшиваться команды для сканера )))

  • @sasharussia7834
    @sasharussia7834 3 місяці тому

    У меня функция не срабатывает. Видимо, эксель старый.

  • @coldinsect13
    @coldinsect13 4 місяці тому

    Понял почти всё кроме самого главного - момент высчитывания контрольной суммы и значений в макросе. Допустим есть код 80291156. Необходимо преврать в шк code 128. Что необходимо высчитывать?

  • @saa.samara
    @saa.samara 10 місяців тому

    Если писать текст, то штрихкод действительно полностью совпадает с генератором. Но если цифры, то нет. Хоть и считывается сканером.

  • @coldinsect13
    @coldinsect13 4 місяці тому

    Понял почти всё кроме самого главного - момент высчитывания контрольной суммы и значений в макросе. Допустим есть Ean-13 4630015127919. Я должен посчитать контрольную сумму его? Что потом?

  • @olgatomasheva350
    @olgatomasheva350 Рік тому

    Павел, когда будут новые видео?

    • @Pavel_Taranukha
      @Pavel_Taranukha  Рік тому +1

      Спасибо за вопрос.
      Сам жду, не дождусь)

  • @TheSpontaneus
    @TheSpontaneus 11 місяців тому

    Здравствуйте. Вставил код с комментария, когда начинаю прописывать функцию ее нет не всплывает. Прописал вручную - ошибка в имени. Макросы включил в настройках в чем проблема может быть Эксель 2019

    • @user-ij4zc3eh8z
      @user-ij4zc3eh8z 8 місяців тому

      Здравствуйте! У меня та же история. Как исправить?

    • @TheSpontaneus
      @TheSpontaneus 7 місяців тому

      @@user-ij4zc3eh8z прописал код не в том месте, нужно не в лист вставлять а слева папка modules и там модуль 1 вставляете туда и все работает

  • @user-lx2yc5mr2t
    @user-lx2yc5mr2t Рік тому

    Как бы сделать печать этикетки на термальном принтере с помощью нажатия галочки на строке заказа

    • @Pavel_Taranukha
      @Pavel_Taranukha  Рік тому

      А в чем сложность?
      На событие нажатия галочки вешаем макрос формииования и печати этикетки.

    • @user-lx2yc5mr2t
      @user-lx2yc5mr2t Рік тому

      @@Pavel_Taranukha чтоб с айпада без формирования

    • @Pavel_Taranukha
      @Pavel_Taranukha  Рік тому

      А здесь полномочия макросов - всё)
      Вводите номер нужной строки в отдельное поле, на него формулами завязывайте формирование этикетки и жмите печать.

  • @user-jz7tf7jp6z
    @user-jz7tf7jp6z Рік тому +1

    Здравствуйте, сделал всё как вы говорили, но вместо штрих кода получаются квадраты

    • @Pavel_Taranukha
      @Pavel_Taranukha  Рік тому

      Так может шрифт забыли установить?

    • @user-vt8ie6ul3b
      @user-vt8ie6ul3b Рік тому

      не разобрались с квадратами?

  • @user-yr2gp5yt5p
    @user-yr2gp5yt5p 26 днів тому

    Напишите ,пжлст, куда вставили код, а то у меня не работает
    нажал комбинацию Alt+f11, скопировал из описания код, заменил в нём слова на символы, сохранил, бац, бац, и не работает