powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / проблемы при распечатки документа макросом
17 сообщений из 17, страница 1 из 1
проблемы при распечатки документа макросом
    #37215208
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть код:
Код: plaintext
1.
2.
Application.PrintOut fileName:="", Range:=wdPrintSelection, Item:=wdPrintDocumentContent, Copies:=Количество_копий, Pages:="", PageType:=wdPrintAllPages, _
ManualDuplexPrint:=False, Collate:=True, Background:=False, PrintToFile:=False, PrintZoomColumn:= 0 , PrintZoomRow:= 0 , PrintZoomPaperWidth:= 0 , _
PrintZoomPaperHeight:= 0 
получаю ошибку 13 Type mismatch Несоответствие типа
подвожу курсор к Количество_копий, верно показывает 1, заменяю Количество_копий на 1 и код двигается дальше
Количество_копий
объявлена как
Код: plaintext
1.
2.
'объявление переменной типа "Байт", размер 1 байт, от 0 до 255
Dim Количество_копий As Byte
Количество_копий =  1 
Главное, что года три работало, а тут ВБА его знает??? что случилось
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37215523
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и чтобы всё уже дорасказать всё для общей картины, ОС стоит ХР, Ворд-2003, хотя считаю это дела не меняет, у меня есть макрос:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Sub Печать_выделенного_текста_1_копия_Контрол_1()
 
'объявление переменной типа "Байт", размер 1 байт, от 0 до 255
Dim Copies_Count As Byte
Copies_Count =  1 
 
Call Печать_1_2_3_копии(Copies_Count)
 
End Sub
И ошибка происходит уже в функции Печать_1_2_3_копии(Copies_Count)
Кстати, как сейчас уже видно заменил кириллицу Количество_копий на латиницу Copies_Count, не помогло
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37215632
NullUzer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

Какова сигнатура функции Печать_1_2_3_копии?
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37215657
NullUzer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрю,

И вообще, напиши полный код - кто кого вызывает и кто кому чего передаёт. :)
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37217165
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NullUzer, это Вы про это спрашиваете:
Сигнатура функции — часть общего объявления функции, позволяющая средствам трансляции идентифицировать функцию среди других. В различных языках программирования существуют разные представления о сигнатуре функции, что также тесно связано с возможностями перегрузки функции в этих языках.

Иногда различают сигнатуру вызова и сигнатуру реализации функции. Сигнатура вызова обычно составляется по синтаксической конструкции вызова функции с учётом сигнатуры области видимости данной функции, имени функции, последовательности фактических типов аргументов в вызове и типе результата. В сигнатуре реализации обычно участвуют некоторые элементы из синтаксической конструкции объявления функции: спецификатор области видимости функции, её имя и последовательность формальных типов аргументов.

Наверное реализации
Есть 3 макроса
Печать_выделенного_текста_1_копия_Контрол_1
Печать_выделенного_текста_1_копия_Контрол_2
Печать_выделенного_текста_1_копия_Контрол_3
Друг от друга отличаются лишь клавишаими запуска: Контрол_1, Контрол_2, Контрол_3 и естественно количеством распичатываемых копий
1, 2, 3.
Марос я Вам написал и к ним трём 1 функция: Печать_1_2_3_копии(Copies_Count)
Она в зависимости от кол. печатет нужное кол. копий
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37217708
NullUzer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ципихович Эндрюи чтобы всё уже дорасказать всё для общей картины, ОС стоит ХР, Ворд-2003, хотя считаю это дела не меняет, у меня есть макрос:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Sub Печать_выделенного_текста_1_копия_Контрол_1()
 
'объявление переменной типа "Байт", размер 1 байт, от 0 до 255
Dim Copies_Count As Byte
Copies_Count =  1 
 
Call Печать_1_2_3_копии(Copies_Count)
 
End Sub
И ошибка происходит уже в функции Печать_1_2_3_копии(Copies_Count)
Кстати, как сейчас уже видно заменил кириллицу Количество_копий на латиницу Copies_Count, не помогло
...
Марос я Вам написал и к ним трём 1 функция: Печать_1_2_3_копии(Copies_Count)


Ты можешь написать свой код ПОЛНОСТЬЮ?
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218909
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NullUzer,

выложить Вам код и сразу бан за отсутствие Оклиптика
Думаю сначала подшаманить сам, нижеприведённые объекты где есть Set я никогда и не объявлял
Код: plaintext
1.
'создать объект согласно выделенному изначально тексту в документе, чтобы потом выделить
Set Объект_согласно_выделенному_изначально_тексту_в_документе = Selection.Range
Как его в этом случае лучше объявить
Dim Объект_согласно_выделенному_изначально_тексту_в_документе As ????????
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218933
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот урезал до некуда, всё также ошибка и Оклиптик есть
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Option Explicit

Sub Печать_выделенного_текста_1_копия_Контрол_1()

'объявление переменной типа "Байт", размер 1 байт, от 0 до 255
Dim Количество_копий As Byte
Количество_копий =  1 

Call Печать_1_2_3_копии(Количество_копий)

End Sub

Sub Печать_1_2_3_копии(Количество_копий)

Application.PrintOut fileName:="", Range:=wdPrintSelection, Item:=wdPrintDocumentContent, Copies:=Количество_копий, Pages:="", PageType:=wdPrintAllPages, _
ManualDuplexPrint:=False, Collate:=True, Background:=False, PrintToFile:=False, PrintZoomColumn:= 0 , PrintZoomRow:= 0 , PrintZoomPaperWidth:= 0 , _
PrintZoomPaperHeight:= 0 

End Sub

Что же это??????
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218957
Фотография Myst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,
Dim Количество_копий As Integer и всё будет ок
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218962
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Myst, это почему так, мне 255 копий хватит за глаза. Вот и объявляй переменные, это ж я понял, ранее она никак не была объявлена и всё пёрло
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218965
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
главное почему As Integer, может 32767 копий мне не хватит, может Лонг??
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218976
Фотография Myst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

можешь и Long - тоже будет работать ...
тип быстрее чем Variant Диапазон значен
Integer в 40 раз От -32768 до 32767
Long в 30 раз От -2147483648 до 2147483647
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218979
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Myst, так было же по законам Byte
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218980
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
то есть там где никак не объявлено в 30-40 раз медленне?? офигеть, я черепаха, да
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37218987
Фотография Myst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

ps и зачем тебе 3 разных макроса с разным количеством копий ? Почему не написать
Количество_копий = InputBox("Сколько копий распечатать ?")
и распечатывай хоть 10, хоть 85 ...
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37219001
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Myst, самый лучший вариант подумал оно напечаталось само, ВБА отдыхает
по Вашему методу
Количество_копий = InputBox("Сколько копий распечатать ?")
сколько телодвижений надо сделать??? Бог его знает, по моему методу 1 телодвижение, но Вы можете возразить, что надо помнить какие клавиши нажимать
если трудно запомнить что
Макросы друг от друга отличаются лишь клавишами запуска: Контрол_1, Контрол_2, Контрол_3 и естественно количеством распичатываемых копий
1, 2, 3

Тогда поднимите мне веки

Ладно проехали
Ответьтте пжл на моё сообщение от сегодня, 17:38
Как его в этом случае лучше объявить
Dim Объект_согласно_выделенному_изначально_тексту_в_документе As ????????
...
Рейтинг: 0 / 0
проблемы при распечатки документа макросом
    #37220905
NullUzer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуй так. И вообще, зачем указывать ВСЕ необязательные параметры??? Если дефолтовые значения устраивают, то указывай только те, которые тебе нужны.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Option Explicit

Sub Печать_выделенного_текста_1_копия_Контрол_1()

'объявление переменной типа "Байт", размер 1 байт, от 0 до 255
Dim Количество_копий As Byte
Количество_копий =  1 

Call Печать_1_2_3_копии(Количество_копий)

End Sub

Sub Печать_1_2_3_копии(ByVal Количество_копий As Byte)

Application.PrintOut fileName:="", Range:=wdPrintSelection, Item:=wdPrintDocumentContent, Copies:=Количество_копий, Pages:="", PageType:=wdPrintAllPages, _
ManualDuplexPrint:=False, Collate:=True, Background:=False, PrintToFile:=False, PrintZoomColumn:= 0 , PrintZoomRow:= 0 , PrintZoomPaperWidth:= 0 , _
PrintZoomPaperHeight:= 0 

End Sub
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / проблемы при распечатки документа макросом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]