Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.10.2017
Сообщений: 4

Процедура печати бланка

26.10.2017, 22:05. Показов 1146. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,столкнулся с проблемой,при обозначении данной процедуры.


Укажите на ошибку.Сам я только начинающий и еще много не понимаю,но ввиду срочности и нужды пришлось погрузиться в это дело.
Миниатюры
Процедура печати бланка  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.10.2017, 22:05
Ответы с готовыми решениями:

Страница (Форма бланка для печати)
Здравствуйте, недавно я увлёкся сайтами и тут же возникла необходимость сделать что-то подобное. Нужна страничка которая будет выполнять...

Процедура Печати
Ребят помогите пожалуйста, прохожу практику на производстве где 1с 7, в технаре не проводилы курсы по писанию на 1с. Проблема что...

Процедура печати
Уважаемые форумчане, подскажите, что надо изменить (добавить) в нижеприведенную процедуру печати отчета, чтобы вызвать блок печати, который...

10
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
26.10.2017, 22:11
Это означает - переменная не объявлена.
И такие кавычки в VBA не живут, используйте "
Видимо именно поэтому и появляется эта неизвестная переменная.
1
0 / 0 / 0
Регистрация: 26.10.2017
Сообщений: 4
26.10.2017, 22:22  [ТС]
Спасибо за оперативный ответ,при смене кавычек наблюдаю эту ошибку,я понимаю её суть,но не могу понять в чём дело.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Option Explicit
Option Base 1
 
Public имя1 As String
Public фам1 As String
Public отчество1 As String
 
Public имя As String
Public фамилия As String
Public отчество As String
 
Dim book(3) As String
Dim dataMas(3) As String
Dim i As Integer
 
 
Sub печать() 'процедура печати бланка
 
book(1) = "фамилия": dataMas(1) = фамилия
book(2) = "имя": dataMas(2) = имя
book(3) = "отчество": dataMas(3) = отчество
For i = 1 To 3
ActiveDocument.FormFields(ActiveDocument.Bookmarks(book(i)).Name).Result = dataMas(i)
Next
ActiveDocument.PrintPreview
UserForm1.Hide
End Sub
Вот код Module1
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
26.10.2017, 22:23
Я по Ворду не специализируюсь. Или это не Ворд... Ну в любом случае тут я пас.
0
0 / 0 / 0
Регистрация: 26.10.2017
Сообщений: 4
26.10.2017, 22:28  [ТС]
Очень жаль,в любом случае спасибо за ответ.
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
26.10.2017, 22:29
Закладки там есть такие? Или как там их называют... эти букмарки.
0
0 / 0 / 0
Регистрация: 26.10.2017
Сообщений: 4
26.10.2017, 22:35  [ТС]
Конечно,потому я и не понимаю,в чём дело,сначала тоже грешил на них,думал,что неверно указал,но прошарив все источники,что возможно,понял,что всё сделал правильно.
0
4089 / 1469 / 401
Регистрация: 07.08.2013
Сообщений: 3,671
27.10.2017, 03:16
а зачем вы переменные функции (макроса) объявляете вне этой функции (макроса)
Visual Basic
1
2
3
4
5
6
7
8
Dim book(3) As String
Dim dataMas(3) As String
Dim i As Integer
 
 
Sub печать() 'процедура печати бланка
 
book(1) = "фамилия": dataMas(1) = фамилия
вот эти dim должны стоять ниже Sub но до первого использования этих переменных (book(1) = "фамилия")
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
27.10.2017, 08:14
Ну может так надо, чтоб переменные были публичными для модуля. Значение переменной фамилия (и другим) ведь тоже в макросе не задаются - очевидно это производится в какой-то другой процедуре, файл ведь нам не показывают, так частями и дозированно только показывают. Я просто в этом уверен
А скрин - это ещё с неготового модуля снят!
1
4089 / 1469 / 401
Регистрация: 07.08.2013
Сообщений: 3,671
27.10.2017, 08:40
Цитата Сообщение от Hugo121 Посмотреть сообщение
Значение переменной фамилия (и другим) ведь тоже в макросе не задаются - очевидно это производится в какой-то другой процедуре
кажется увидел
вот тут
Visual Basic
1
2
3
book(1) = "фамилия": dataMas(1) = фамилия
book(2) = "имя": dataMas(2) = имя
book(3) = "отчество": dataMas(3) = отчество
в массив dataMas() вносятся значения переменных фамилия, имя, отчество
а переменные не объявлены и при установленном Option Explicit возникает ошибка
0
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
27.10.2017, 08:46
Не, переменные ведь объявлены, и т.к. они всёж публичные глобально (я там выше ошибся, не уточнил по коду) - они вполне могут получать значения где-то в других процедурах.
А ошибка была из-за кавычек - это уже получались другие необъявленные переменные.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.10.2017, 08:46
Помогаю со студенческими работами здесь

Процедура печати для DBGridEh
Здравствуйте. Подскажите пожалуйста процедуру печати для PrintDBGridEh. Используется бд Access, отображаются в DBGridEh.

Процедура печати заданных числовых строк
Составить процедуру, которая для заданного числа n печатала целые числа в виде (n=5) 5 5 5 5 5 3 3 3 3 3 1 1 1 1 1 3 3 3 3 3 5 5...

Процедура печати листьев бинарного дерева
2. Процедура печати листьев бинарного дерева

Процедура печати для внешней обработки
Добрый день, 2-ой день мучаюсь с простейшей задачей: Я создал внешнюю обработку в ней создал макет, в котором для теста поместил...

Где находится процедура печати у внешнего отчета
где размещается процедура печать у внешнего отчета и как привязать к ней кнопку. я думаю в форме отчета поставить кнопку, но не могу к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru