![]() |
|
Вопрос знатокам Visual Basic по написанию макросов в Ворде | ☑ | ||
---|---|---|---|---|
0
s-pc
06.08.11
✎
19:56
|
Помогите, пожалуйста разобраться вот в этой инструкции - http://code128.narod.ru/
В частности, застрял на пункте 3.2. Вставка штрихкодов в файлы Microsoft Word (я не спец ни по VB, ни по написанию макросов в ворде). Мне нужно чтобы просто по нажатию нужной кнопки в правом верхнем углу вордовского документа появлялся (формировался) штрихкод - вполне пойдет обычный EAN13 (для внутреннего пользования). Эта утилита и позволяет это делать (если выполнить пункты 3.2. инструкции)? Если да, то .. можете чуток подробнее (пошагово) расписать, ЧТО все таки мне нужно для это сделать? |
|||
1
big
06.08.11
✎
20:03
|
емэйл покажи свой. Есть примеры, а выслать некуда
|
|||
2
s-pc
06.08.11
✎
20:04
|
(1) tutan@bk.ru
|
|||
3
big
06.08.11
✎
20:08
|
(2) хмм... оказывется по сылке в (0) это тоже самое.
Собссно, надо изучать VBA. Тут в два тыка не обойдется. з.ы. моделировать ситуацию нет никакого желания. Пардон. |
|||
4
Torquader
06.08.11
✎
21:21
|
"Что может быть непонятного в этой формуле" (с)
Собственно, в шрифте или кодирование штрихами определённых знаков или просто две полоски - чёрная и белая. Далее, нужно из кода штрихкода (тех цифр, которые он кодирует) собрать строку, которая описывает штрихи, которые нужно отобразить в ячейке - далее в ячейку вставляем это содержимое и выбираем шрифт, который выводит штрих-код. Всё очень просто. P.S. я в Excel штрих-код через объект Диаграмма рисовал - вот там действительно нужно попотеть. |
|||
5
дущ
06.08.11
✎
22:01
|
Public Function ean13$(chaine$)
'Cette fonction est r?gie par la Licence G?n?rale Publique Amoindrie GNU (GNU LGPL) 'This function is governed by the GNU Lesser General Public License (GNU LGPL) 'V 1.1.1 'Param?tres : une chaine de 12 chiffres 'Parameters : a 12 digits length string 'Retour : * une chaine qui, affich?e avec la police EAN13.TTF, donne le code barre ' * une chaine vide si param?tre fourni incorrect 'Return : * a string which give the bar code when it is dispayed with EAN13.TTF font ' * an empty string if the supplied parameter is no good Dim i%, checksum%, first%, CodeBarre$, tableA As Boolean ean13$ = "" 'V?rifier qu'il y a 12 caract?res 'Check for 12 characters If Len(chaine$) = 12 Then 'Et que ce sont bien des chiffres 'And they are really digits For i% = 1 To 12 If Asc(Mid$(chaine$, i%, 1)) < 48 Or Asc(Mid$(chaine$, i%, 1)) > 57 Then i% = 0 Exit For End If Next If i% = 13 Then 'Calcul de la cl? de contr?le 'Calculation of the checksum For i% = 12 To 1 Step -2 checksum% = checksum% + Val(Mid$(chaine$, i%, 1)) Next checksum% = checksum% * 3 For i% = 11 To 1 Step -2 checksum% = checksum% + Val(Mid$(chaine$, i%, 1)) Next chaine$ = chaine$ & (10 - checksum% Mod 10) Mod 10 'Le premier chiffre est pris tel quel, le deuxi?me vient de la table A 'The first digit is taken just as it is, the second one come from table A CodeBarre$ = Left$(chaine$, 1) & Chr$(65 + Val(Mid$(chaine$, 2, 1))) first% = Val(Left$(chaine$, 1)) For i% = 3 To 7 tableA = False Select Case i% Case 3 Select Case first% Case 0 To 3 tableA = True End Select Case 4 Select Case first% Case 0, 4, 7, 8 tableA = True End Select Case 5 Select Case first% Case 0, 1, 4, 5, 9 tableA = True End Select Case 6 Select Case first% Case 0, 2, 5, 6, 7 tableA = True End Select Case 7 Select Case first% Case 0, 3, 6, 8, 9 tableA = True End Select End Select If tableA Then CodeBarre$ = CodeBarre$ & Chr$(65 + Val(Mid$(chaine$, i%, 1))) Else CodeBarre$ = CodeBarre$ & Chr$(75 + Val(Mid$(chaine$, i%, 1))) End If Next CodeBarre$ = CodeBarre$ & "*" 'Ajout s?parateur central / Add middle separator For i% = 8 To 13 CodeBarre$ = CodeBarre$ & Chr$(97 + Val(Mid$(chaine$, i%, 1))) Next CodeBarre$ = CodeBarre$ & "+" 'Ajout de la marque de fin / Add end mark ean13$ = CodeBarre$ End If End If End Function Copyright http://grandzebu.net фонт качай отсюда http://grandzebu.net/informatique/codbar/ean13.ttf |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |