Przesunięty przez: Kaper 06-11-2023, 10:58 |
Zmienne z UserForm |
Autor |
Wiadomość |
darek_op
Starszy Forumowicz
Posty: 40
|
Wysłany: 05-11-2023, 10:10 Zmienne z UserForm
|
|
|
Nie mam już pomysłu co robię źle.
Mam zadeklarowana zmienną Public.
Nadaję jej wartośc w UserForm po czym zamykam UF i otwieram inną UserForm i nie mam już wartości zmiennej.
Walczę z tym od wczoraj i ..... |
|
| ID posta:
431077
|
|
|
|
|
|
|
Tajan
Pomógł: 5512 razy Posty: 11984
|
Wysłany: 05-11-2023, 11:46
|
|
|
A gdzie jest zadeklarowana ta zmienna? Powinna być w module zwykłym a nie w module formularza. |
|
| ID posta:
431079
|
|
|
|
|
|
darek_op
Starszy Forumowicz
Posty: 40
|
Wysłany: 05-11-2023, 13:25
|
|
|
Tak jak na PRTSCR
Zrzut ekranu 2023-11-05 132458.jpg
|
|
Plik ściągnięto 30 raz(y) 30.44 KB |
|
|
| ID posta:
431082
|
|
|
|
|
|
Tajan
Pomógł: 5512 razy Posty: 11984
|
Wysłany: 05-11-2023, 14:55
|
|
|
Definicję zmiennej należy umieścić w module nie zawierającym innego kodu. Z obrazka wynika, że tak jest u ciebie. Trudno zatem powiedzieć w czym jest problem... Może coś w kodzie szwankuje?
Sprawdź załączony plik. U mnie działa. A u ciebie?
Zmienna.xlsm
|
Pobierz Plik ściągnięto 62 raz(y) 25.38 KB |
|
|
| ID posta:
431087
|
|
|
|
|
|
master_mix
Excel Expert
Wersja: Win Office 365
Pomógł: 1293 razy Posty: 2637
|
Wysłany: 06-11-2023, 17:58
|
|
|
prawdopodobnie w drugiej formie w zdarzeniu initialize lub activate, masz kod który czyści/zmienia wartość zmiennej |
_________________
Podejmę współpracę (pracę)
Programowanie C#, Android, iOS, VB.NET, VBA, ASP.NET Core, WPF, Xamarin, Power Platforms, XAML, MVC, LINQ, Entity Framework. Bazy danych SQL Server, Oracle, MySQL, Firebird
Wrocław i okolice …lub zdalnie. |
|
| ID posta:
431141
|
|
|
|
|
|
Tajan
Pomógł: 5512 razy Posty: 11984
|
Wysłany: 06-11-2023, 18:29
|
|
|
Raczej nie. To jest ciekawa sprawa. Jeżeli definicja zmiennej jest w module z którego są uruchamiane formularze to po zamknięciu formularza jej wartość jest czyszczona. Jeżeli jest w innym module - zachowuje wartość. Jakiś bug? Nie wiem... |
|
| ID posta:
431143
|
|
|
|
|
|
Maciej Gonet
Excel Expert
Wersja: Win Office 365
Pomógł: 3503 razy Posty: 10361
|
Wysłany: 06-11-2023, 21:26
|
|
|
Wygląda na to, że "winne" jest użycie metody Unload. Z Hide zachowuje się lepiej.
Tu można coś poczytać o tym.
'https://www.makroaplikacje.pl/formularz-jako-klasa/#:~:text=Formularz%20u%C5%BCytkownika%20jest%20przyk%C5%82adem%20klasy%2C%20dlatego%20w%20kodzie,jak%20si%C4%99%20do%20nich%20odwo%C5%82ywa%C4%87%20w%20zewn%C4%99trznych%20procedurach.
z odnośnikiem do 'Unload'.
ZmiennaTajan.xlsm
|
Pobierz Plik ściągnięto 40 raz(y) 29 KB |
|
|
| ID posta:
431155
|
|
|
|
|
|
master_mix
Excel Expert
Wersja: Win Office 365
Pomógł: 1293 razy Posty: 2637
|
Wysłany: 06-11-2023, 23:33
|
|
|
Tajan napisał/a: | To jest ciekawa sprawa. Jeżeli definicja zmiennej jest w module z którego są uruchamiane formularze to po zamknięciu formularza jej wartość jest czyszczona. Jeżeli jest w innym module - zachowuje wartość |
A nawet więcej... czasami jest zachowana a czasami nie
Ewidentny bug.
Maciej Gonet napisał/a: | Wygląda na to, że "winne" jest użycie metody Unload. Z Hide zachowuje się lepiej. |
No tak, bo niszczona jest wraz z instancją, ale to nie tłumaczy anomali o którym pisał Tajan |
_________________
Podejmę współpracę (pracę)
Programowanie C#, Android, iOS, VB.NET, VBA, ASP.NET Core, WPF, Xamarin, Power Platforms, XAML, MVC, LINQ, Entity Framework. Bazy danych SQL Server, Oracle, MySQL, Firebird
Wrocław i okolice …lub zdalnie. |
|
| ID posta:
431163
|
|
|
|
|
|
master_mix
Excel Expert
Wersja: Win Office 365
Pomógł: 1293 razy Posty: 2637
|
Wysłany: 07-11-2023, 20:21
|
|
|
aha,
i ta "dysfunkcja" ma miejsce tylko podczas otwartego edytora VBE
Przynajmniej u mnie |
_________________
Podejmę współpracę (pracę)
Programowanie C#, Android, iOS, VB.NET, VBA, ASP.NET Core, WPF, Xamarin, Power Platforms, XAML, MVC, LINQ, Entity Framework. Bazy danych SQL Server, Oracle, MySQL, Firebird
Wrocław i okolice …lub zdalnie. |
|
| ID posta:
431181
|
|
|
|
|
|
Tajan
Pomógł: 5512 razy Posty: 11984
|
Wysłany: 07-11-2023, 20:47
|
|
|
Pewnie masz rację U mnie edytor rzadko kiedy jest zamknięty więc nie miałem okazji sprawdzić. |
|
| ID posta:
431183
|
|
|
|
|
|
darek_op
Starszy Forumowicz
Posty: 40
|
Wysłany: 26-11-2023, 11:34
|
|
|
Tak to jest ciekawy temat, ponieważ czasami zmienna się zachowuje, a czasami nie
Trudno poradziłem sobie bez tej zmiennej i jest ok. |
|
| ID posta:
431594
|
|
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
|
Strona uĹźywa plikĂłw cookies.
Kliknij tutaj, Ĺźeby dowiedzieÄ siÄ jaki jest cel uĹźywania cookies oraz jak zmieniÄ ustawienia cookie w przeglďż˝darce.
KorzystajÄ
c ze strony uĹźytkownik wyraĹźa zgodÄ na uĹźywanie plikĂłw cookies, zgodnie z bieĹźÄ
cymi ustawieniami przeglÄ
darki.
SprawdĹş, w jaki sposĂłb przetwarzamy dane osobowe
|