powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / наличие глобальной переменной ... в документе
21 сообщений из 21, страница 1 из 1
наличие глобальной переменной ... в документе
    #37137707
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так, всё ОК
Код: plaintext
1.
'запускаем проверку на наличие глобальной переменной ... в документе
If Not ExistVar("Первое_слово") Then ...
когда с переменной
Код: plaintext
1.
'запускаем проверку на наличие глобальной переменной ... в документе
If Not ExistVar(Первое_слово) Then ...
получаю, выделяет Первое_слово и сообщение ByRef argument mismatch
То есть не ужели нельзя переменой пользоваться???
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37137780
Ципихович Эндрю,
а так?
Код: plaintext
1.
2.
'запускаем проверку на наличие глобальной переменной ... в документе
If Not ExistVar( CStr(Первое_слово) ) Then ...
ЗЫ: зная Вашу любовь к переменным с типом Variant
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37137964
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, ну всё против меня, даже проверить не могу, чегодня вдруг стало выделять
"ExistVar" и сообщение сокромольное - функция или процедура not defined
То есть вчера всё Ок было а сегодня нот дефинед
Что за ересь??
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37137996
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрюпробуй камнем, ну всё против меня, даже проверить не могу, чегодня вдруг стало выделять
"ExistVar" и сообщение сокромольное - функция или процедура not defined
То есть вчера всё Ок было а сегодня нот дефинед
Что за ересь??Может http://www.excel-vba.ru/index.php?file=Tips_Macro_Cannot_Find_Library] в этом все дело?
Tools-References. Ищем MISSING
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138374
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist,

там же надо снимать галочки оттуда где есть Миссинг, у меня установлено 8 библиотек и среди них с Миссинг нет
?????
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138456
Ципихович Эндрю,
вопрос на засыпку: из какой библиотеки функция ExistVar ?
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138468
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем,
1 я не знаю
2 когда я впервыеи её опробовал никакие библиотеки не применял
3 один день всё Ок второй не всё Ок, загадка
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138480
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
здесь ничего про боблиотеку не сказано
http://support.microsoft.com/kb/306281/ru
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138484
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а Вы еще знаете способы как сохранить промежуточные значения между запусками Word???
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138493
Ципихович Эндрюздесь ничего про боблиотеку не сказано
http://support.microsoft.com/kb/306281/ru там также не встречается функция ExistVar( VarName As String )
Ципихович Эндрюа Вы еще знаете способы как сохранить промежуточные значения между запусками Word???реестр, файл.
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138497
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, по поводу этого: функция ExistVar(VarName As String) буду думать
файл не интересно, реестр интересно, сложно?
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138499
Ципихович Эндрю,
реестр - не сложно.
ИМХО, если значения переменных нужны только для одного документа, то реестр - из пушки по воробьям; лучше использовать ActiveDocument.Variables.
Ципихович Эндрюпо поводу этого: функция ExistVar(VarName As String) буду думатьЧто тут думать?! Прыгать надо!(с)
Не думать, а вспоминать, где и с кем описывали эту функцию.
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138501
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не вспоминается ни где ни с кем, может снилось, подскажите
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138504
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вспомнил вроде
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138510
Ципихович Эндрю,
может это?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
' *********************************************************************
' определение наличия переменной в коллекции ActiveDocument.Variables
' параметры: 
'    VarName (String) - имя переменной
' возвращаемые значения:
'    переменная с заданным именем существует: 
'       ее индекс в коллекции ActiveDocument.Variables
'    переменная с заданным именем существует: 0
Public Function ExistVar&(VarName$)
  Dim aVar
  
  For Each aVar In ActiveDocument.Variables
    If aVar.Name = VarName Then 
      ExistVar = aVar.Index
      Exit Function
  Next aVar
End Function
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138511
Ципихович Эндрю,
исправление:
Код: plaintext
1.
2.
3.
4.
' возвращаемые значения:
'    переменная с заданным именем существует: 
'       ее индекс в коллекции ActiveDocument.Variables
'    переменная с заданным именем НЕ существует: 0
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138515
Ципихович Эндрю,
пардон, поторопился, ошибок наделал. Окончательный вариант ExistVar:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
' *********************************************************************
' определение наличия переменной в коллекции ActiveDocument.Variables
' параметры: 
'    VarName (String) - имя переменной
' возвращаемые значения:
'    переменная с заданным именем существует: 
'       ее индекс в коллекции ActiveDocument.Variables
'    переменная с заданным именем не существует: 0
Public Function ExistVar&(VarName$)
  Dim aVar
  
  For Each aVar In ActiveDocument.Variables
    If aVar.Name = VarName Then 
      ExistVar = aVar.Index
      Exit Function
    End If
  Next aVar
End Function
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138517
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
таки вспимнил!!!!!! спасибо
вот ещё зря радовался меня это сходство подвело слова ExistVar с моим любимым Exists - Существовать, то есть опять перебор и т. д. головняк, 8000 строк в реестр затолкать можно??
А эти переменные Dictionary можно сделать, там же есть любимый Exists ???
Не помню в коллекции есть любимый Exists??????
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138518
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну Ваш вариант тот же что и у меня, по русски
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Function ExistVar(ИмяИскомойПеременной As String) As Boolean 'функция для проверки существования переменной с именем "ИмяИскомойПеременной"

Dim myVar As Variable
ExistVar = False 'начальное значение функции
Количество_переменных_в_документе = ActiveDocument.Variables.Count
For Each myVar In ActiveDocument.Variables 'перебор всех переменных в документе
If myVar.Name = ИмяИскомойПеременной Then
ExistVar = True 'если переменная существует - возвращаем значение True
Exit For 'выход из цикла
End If
Next myVar

End Function
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138523
Ципихович Эндрютаки вспимнил!!!!!! спасибо
вот ещё зря радовался меня это сходство подвело слова ExistVar с моим любимым Exists - Существовать, то есть опять перебор и т. д. головняк, 8000 строк в реестр затолкать можно??
А эти переменные Dictionary можно сделать, там же есть любимый Exists ???
Не помню в коллекции есть любимый Exists??????1) в 8k строк в реестр затолкать можно. Но не нужно. Реестр при всей своей живучести - существо нежное и ранимое.
2) затрудняюсь ответить. Поэксперементируйте, поделитесь с собществом результатами.
3) нет. Можно попробовать добавлять в коллекцию элемент и, если получаем ошибку, то такой элемент существует. Как вариант - перебирать все элементы коллекции и сравнивать их имена с интересующим.
...
Рейтинг: 0 / 0
наличие глобальной переменной ... в документе
    #37138529
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, понял спасибо!!!!!!!!!
добавлять в коллекцию элемент и, если получаем ошибку, то такой элемент существует - класс, почти Екстиз

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


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