Объявление глобальной переменной
combat
Дата: Воскресенье, 22.11.2015, 11:32 |
Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
0
±
Замечаний:
20% ±
Excel 2010
В исполняемом коде формы объявил глобальную переменную rrr [vba]Код
Option Explicit ' Public rrr As Integer Dim SRng As Range ', InRng As Range Dim roww As Long
[/vba] в этой форме должен получить значения [vba]Код
Private Sub OptionButton1_Change() Frame1.Height = 150 If OptionButton1.Value = True Then rrr = 21 ... End Sub Private Sub OptionButton2_Change() Frame1.Height = 150 If OptionButton2.Value = True Then rrr = 25 ... End If End Sub
[/vba] а вот здесь появляется ошибка, код на листе, ггг показывает, что Empty [vba]Код
Sheets("Save").Range("a" + LTrim$(Str$(z))) = Mid(Worksheets("РСИ").Cells(15, 1).Value, rrr, 999) ' наименование, тип, рег. №
[/vba] [vba]Код
Sub CommandButton2_Click() ActiveSheet.PrintOut Dim z As Variant z = 1 While Sheets("Save").Range("a" + LTrim$(Str$(z))) <> "" z = z + 1 Wend Sheets("Save").Range("a" + LTrim$(Str$(z))) = Mid(Worksheets("РСИ").Cells(15, 1).Value, rrr, 999) ' наименование, тип, рег. № Sheets("Save").Range("b" + LTrim$(Str$(z))) = Worksheets("РСИ").Cells(25, 14).Value ' зав. № .... End Sub
[/vba] кто подскажет, где ошибка почему rrr для кода листа "РСИ" не присваивается значение 21 или 25 в зависимости от условия в формы2
В исполняемом коде формы объявил глобальную переменную rrr [vba]Код
Option Explicit ' Public rrr As Integer Dim SRng As Range ', InRng As Range Dim roww As Long
[/vba] в этой форме должен получить значения [vba]Код
Private Sub OptionButton1_Change() Frame1.Height = 150 If OptionButton1.Value = True Then rrr = 21 ... End Sub Private Sub OptionButton2_Change() Frame1.Height = 150 If OptionButton2.Value = True Then rrr = 25 ... End If End Sub
[/vba] а вот здесь появляется ошибка, код на листе, ггг показывает, что Empty [vba]Код
Sheets("Save").Range("a" + LTrim$(Str$(z))) = Mid(Worksheets("РСИ").Cells(15, 1).Value, rrr, 999) ' наименование, тип, рег. №
[/vba] [vba]Код
Sub CommandButton2_Click() ActiveSheet.PrintOut Dim z As Variant z = 1 While Sheets("Save").Range("a" + LTrim$(Str$(z))) <> "" z = z + 1 Wend Sheets("Save").Range("a" + LTrim$(Str$(z))) = Mid(Worksheets("РСИ").Cells(15, 1).Value, rrr, 999) ' наименование, тип, рег. № Sheets("Save").Range("b" + LTrim$(Str$(z))) = Worksheets("РСИ").Cells(25, 14).Value ' зав. № .... End Sub
[/vba] кто подскажет, где ошибка почему rrr для кода листа "РСИ" не присваивается значение 21 или 25 в зависимости от условия в формы2 combat
Сообщение отредактировал combat - Воскресенье, 22.11.2015, 11:36
Ответить
Сообщение В исполняемом коде формы объявил глобальную переменную rrr [vba]Код
Option Explicit ' Public rrr As Integer Dim SRng As Range ', InRng As Range Dim roww As Long
[/vba] в этой форме должен получить значения [vba]Код
Private Sub OptionButton1_Change() Frame1.Height = 150 If OptionButton1.Value = True Then rrr = 21 ... End Sub Private Sub OptionButton2_Change() Frame1.Height = 150 If OptionButton2.Value = True Then rrr = 25 ... End If End Sub
[/vba] а вот здесь появляется ошибка, код на листе, ггг показывает, что Empty [vba]Код
Sheets("Save").Range("a" + LTrim$(Str$(z))) = Mid(Worksheets("РСИ").Cells(15, 1).Value, rrr, 999) ' наименование, тип, рег. №
[/vba] [vba]Код
Sub CommandButton2_Click() ActiveSheet.PrintOut Dim z As Variant z = 1 While Sheets("Save").Range("a" + LTrim$(Str$(z))) <> "" z = z + 1 Wend Sheets("Save").Range("a" + LTrim$(Str$(z))) = Mid(Worksheets("РСИ").Cells(15, 1).Value, rrr, 999) ' наименование, тип, рег. № Sheets("Save").Range("b" + LTrim$(Str$(z))) = Worksheets("РСИ").Cells(25, 14).Value ' зав. № .... End Sub
[/vba] кто подскажет, где ошибка почему rrr для кода листа "РСИ" не присваивается значение 21 или 25 в зависимости от условия в формы2 Автор - combat Дата добавления - 22.11.2015 в 11:32
RAN
Дата: Воскресенье, 22.11.2015, 11:42 |
Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
почему rrr для кода листа "РСИ" не присваивается
Потому, чтоВ исполняемом коде формы объявил глобальную переменную rrr
почему rrr для кода листа "РСИ" не присваивается
Потому, чтоВ исполняемом коде формы объявил глобальную переменную rrr
RAN
Быть или не быть, вот в чем загвоздка!
Ответить
Сообщение почему rrr для кода листа "РСИ" не присваивается
Потому, чтоВ исполняемом коде формы объявил глобальную переменную rrr
Автор - RAN Дата добавления - 22.11.2015 в 11:42
combat
Дата: Воскресенье, 22.11.2015, 13:38 |
Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
0
±
Замечаний:
20% ±
Excel 2010
Все равно не понял, все таки как решить проблему, что не так, не там объявил
Все равно не понял, все таки как решить проблему, что не так, не там объявил combat
Ответить
Сообщение Все равно не понял, все таки как решить проблему, что не так, не там объявил Автор - combat Дата добавления - 22.11.2015 в 13:38
RAN
Дата: Воскресенье, 22.11.2015, 13:41 |
Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Быть или не быть, вот в чем загвоздка!
Ответить
combat
Дата: Воскресенье, 22.11.2015, 14:19 |
Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
0
±
Замечаний:
20% ±
Excel 2010
То есть, я не там вставил [vba][/vba] нужно было вставить в ЭтаКнига? предложенный ресурс почитал, на мысль об ошибке не на вел
То есть, я не там вставил [vba][/vba] нужно было вставить в ЭтаКнига? предложенный ресурс почитал, на мысль об ошибке не на вел combat
Сообщение отредактировал combat - Воскресенье, 22.11.2015, 14:19
Ответить
Сообщение То есть, я не там вставил [vba][/vba] нужно было вставить в ЭтаКнига? предложенный ресурс почитал, на мысль об ошибке не на вел Автор - combat Дата добавления - 22.11.2015 в 14:19
Pelena
Дата: Воскресенье, 22.11.2015, 14:43 |
Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 19195
Репутация:
4423
±
Замечаний:
±
Excel 365 & Mac Excel
Цитата из статьи по ссылкеЦитата
Важно : объявлять подобным образом переменную необходимо строго в стандартном модуле
Цитата из статьи по ссылкеЦитата
Важно : объявлять подобным образом переменную необходимо строго в стандартном модуле
Pelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение Цитата из статьи по ссылкеЦитата
Важно : объявлять подобным образом переменную необходимо строго в стандартном модуле
Автор - Pelena Дата добавления - 22.11.2015 в 14:43
RAN
Дата: Воскресенье, 22.11.2015, 15:01 |
Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Быть или не быть, вот в чем загвоздка!
Ответить
combat
Дата: Воскресенье, 22.11.2015, 15:26 |
Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
0
±
Замечаний:
20% ±
Excel 2010
Так у меня один код в форме, а другой на листе, переменную я привязываю от формы, где должно присвоится к "rrr" либо значение 21 либо 25 для кода листа (РСИ), модуль в общем проекте есть но он не использует эту переменную или я вообще не в ту степь, как нужно? не понимаюююююю
Так у меня один код в форме, а другой на листе, переменную я привязываю от формы, где должно присвоится к "rrr" либо значение 21 либо 25 для кода листа (РСИ), модуль в общем проекте есть но он не использует эту переменную или я вообще не в ту степь, как нужно? не понимаюююююю combat
Ответить
Сообщение Так у меня один код в форме, а другой на листе, переменную я привязываю от формы, где должно присвоится к "rrr" либо значение 21 либо 25 для кода листа (РСИ), модуль в общем проекте есть но он не использует эту переменную или я вообще не в ту степь, как нужно? не понимаюююююю Автор - combat Дата добавления - 22.11.2015 в 15:26
RAN
Дата: Воскресенье, 22.11.2015, 15:52 |
Сообщение № 9
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Понажимайте кнопочки
Быть или не быть, вот в чем загвоздка!
Ответить
Сообщение Понажимайте кнопочки Автор - RAN Дата добавления - 22.11.2015 в 15:52
_Boroda_
Дата: Воскресенье, 22.11.2015, 17:41 |
Сообщение № 10
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация:
6481
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Немного поясню словамиТак у меня один код в форме, а другой на листе, ..., модуль в общем проекте есть но он не использует эту переменную
Даже если у Вас модуля вообще нет, а весь код где-то в других местах, Вам нужно его (модуль) создать и там написать одну строку - [vba][/vba]
Немного поясню словамиТак у меня один код в форме, а другой на листе, ..., модуль в общем проекте есть но он не использует эту переменную
Даже если у Вас модуля вообще нет, а весь код где-то в других местах, Вам нужно его (модуль) создать и там написать одну строку - [vba][/vba] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Немного поясню словамиТак у меня один код в форме, а другой на листе, ..., модуль в общем проекте есть но он не использует эту переменную
Даже если у Вас модуля вообще нет, а весь код где-то в других местах, Вам нужно его (модуль) создать и там написать одну строку - [vba][/vba] Автор - _Boroda_ Дата добавления - 22.11.2015 в 17:41
combat
Дата: Воскресенье, 22.11.2015, 17:57 |
Сообщение № 11
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
0
±
Замечаний:
20% ±
Excel 2010
Что то я все таки не понимаю, или туплю, не знаю в вашем примере глобальную переменную объявили в модуле, где и прописали код, но я то не использую модуль прописал там переменную и то же самое может быть я не так объясняю, может быть весь файл скинуть после заполнения бланка и нажатия кн. Печать идет сохранение вот здесь ругается, выскочит ошибка
Что то я все таки не понимаю, или туплю, не знаю в вашем примере глобальную переменную объявили в модуле, где и прописали код, но я то не использую модуль прописал там переменную и то же самое может быть я не так объясняю, может быть весь файл скинуть после заполнения бланка и нажатия кн. Печать идет сохранение вот здесь ругается, выскочит ошибка combat
Сообщение отредактировал combat - Воскресенье, 22.11.2015, 18:00
Ответить
Сообщение Что то я все таки не понимаю, или туплю, не знаю в вашем примере глобальную переменную объявили в модуле, где и прописали код, но я то не использую модуль прописал там переменную и то же самое может быть я не так объясняю, может быть весь файл скинуть после заполнения бланка и нажатия кн. Печать идет сохранение вот здесь ругается, выскочит ошибка Автор - combat Дата добавления - 22.11.2015 в 17:57
_Boroda_
Дата: Воскресенье, 22.11.2015, 18:19 |
Сообщение № 12
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация:
6481
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Давайте еще раз. В модуль1 сверху нужно дописать еще одно объявление. Вот так [vba]Код
Public Slov() As String Public Ind() As Long Public rrr
[/vba] В остальном коде убрать все [vba][/vba] и наступит счастье!в вашем примере глобальную переменную объявили в модуле, где и прописали код, но я то не использую модуль
Это называется "Не спрашивайте "Почему?", просто сделайте так". Ну такие правила объявления, так установили в МS. У меня тоже не влезло. Тоже выкинул.
Давайте еще раз. В модуль1 сверху нужно дописать еще одно объявление. Вот так [vba]Код
Public Slov() As String Public Ind() As Long Public rrr
[/vba] В остальном коде убрать все [vba][/vba] и наступит счастье!в вашем примере глобальную переменную объявили в модуле, где и прописали код, но я то не использую модуль
Это называется "Не спрашивайте "Почему?", просто сделайте так". Ну такие правила объявления, так установили в МS. У меня тоже не влезло. Тоже выкинул. _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Давайте еще раз. В модуль1 сверху нужно дописать еще одно объявление. Вот так [vba]Код
Public Slov() As String Public Ind() As Long Public rrr
[/vba] В остальном коде убрать все [vba][/vba] и наступит счастье!в вашем примере глобальную переменную объявили в модуле, где и прописали код, но я то не использую модуль
Это называется "Не спрашивайте "Почему?", просто сделайте так". Ну такие правила объявления, так установили в МS. У меня тоже не влезло. Тоже выкинул. Автор - _Boroda_ Дата добавления - 22.11.2015 в 18:19
RAN
Дата: Воскресенье, 22.11.2015, 18:22 |
Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Тяжела она, шапка Мономаха. Листы выкинул, думал без архива влезет. Не влезло.
Тяжела она, шапка Мономаха. Листы выкинул, думал без архива влезет. Не влезло. RAN
Быть или не быть, вот в чем загвоздка!
Ответить
Сообщение Тяжела она, шапка Мономаха. Листы выкинул, думал без архива влезет. Не влезло. Автор - RAN Дата добавления - 22.11.2015 в 18:22
combat
Дата: Воскресенье, 22.11.2015, 18:29 |
Сообщение № 14
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
0
±
Замечаний:
20% ±
Excel 2010
УФФФ, все заработало, доходчиво теперь.... СПАСИБО!!!
УФФФ, все заработало, доходчиво теперь.... СПАСИБО!!! combat
Ответить
Сообщение УФФФ, все заработало, доходчиво теперь.... СПАСИБО!!! Автор - combat Дата добавления - 22.11.2015 в 18:29
RAN
Дата: Воскресенье, 22.11.2015, 19:32 |
Сообщение № 15
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Кстати, о Public. Public z_ As String в модуле формы не нужно. Public нужно на уровне проекта. На уровне модуля достаточно Dim z_ As String.
Кстати, о Public. Public z_ As String в модуле формы не нужно. Public нужно на уровне проекта. На уровне модуля достаточно Dim z_ As String. RAN
Быть или не быть, вот в чем загвоздка!
Ответить
Сообщение Кстати, о Public. Public z_ As String в модуле формы не нужно. Public нужно на уровне проекта. На уровне модуля достаточно Dim z_ As String. Автор - RAN Дата добавления - 22.11.2015 в 19:32
combat
Дата: Воскресенье, 22.11.2015, 21:58 |
Сообщение № 16
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация:
0
±
Замечаний:
20% ±
Excel 2010
Учел исправил. Если заметили, у меня есть лист калибровка, нужен для подгонки 2-х линий на листе РСИ (в основном по высоте), почему то на разных ПК, по разному рисует, вообще правильно ли я все сделал, или же по др. пути надо было идти [moder]Какое отношение этот вопрос имеет к глобальным переменным?
Учел исправил. Если заметили, у меня есть лист калибровка, нужен для подгонки 2-х линий на листе РСИ (в основном по высоте), почему то на разных ПК, по разному рисует, вообще правильно ли я все сделал, или же по др. пути надо было идти [moder]Какое отношение этот вопрос имеет к глобальным переменным? combat
Сообщение отредактировал _Boroda_ - Воскресенье, 22.11.2015, 22:00
Ответить
Сообщение Учел исправил. Если заметили, у меня есть лист калибровка, нужен для подгонки 2-х линий на листе РСИ (в основном по высоте), почему то на разных ПК, по разному рисует, вообще правильно ли я все сделал, или же по др. пути надо было идти [moder]Какое отношение этот вопрос имеет к глобальным переменным? Автор - combat Дата добавления - 22.11.2015 в 21:58