Excel Forum - Porady, Pomoc,  Excel Help, Excel FAQ Strona Główna
 FAQ  RegulaminRegulamin  Szukaj   Użytkownicy   Grupy   Rejestracja   Profil   Twoje wiadomości   Zaloguj 


Poprzedni temat «» Następny temat
ID tematu: 73971 Skopiuj do schowka Nie widzi Public Const w Excel 2019
Autor Wiadomość
hanss9
Fan Excela


Posty: 60
Wysłany: 12-01-2023, 10:42   Nie widzi Public Const w Excel 2019

Staram się unikać pisania nowych tematów i szukać rozwiązania w poruszonych już tematach ale niestety albo słabo szukam albo po prostu nie ma.

Problem jak w temacie a mianowicie po zmianie komputera i Excela z 2016 na 2019 po uruchomieniu pliki z kodem nie widzi zadeklarowanych stałych Public Const.
Problem jest o tyle dziwny, że u mnie na komputerze gdzie tworzyłem kod i podniosłem wersie Excela do 2019 problemu nie ma.
Do tego gdy napiszę nową procedurę w piliku gdzie występuje problem, która przywołuje zadeklarowaną stałą to problem znika i widać wartość zadeklarowanych stałych. Problem powraca gdy na nowo uruchomię plik.

Proszę o jakieś wskazówki
ID posta: 424108 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 12-01-2023, 14:38   

Co jeszcze ciekawe zauważyłem, że excel 2019 otwiera bez problemu starsze pliki, które nie były jeszcze otwierane w excelu 2019 nie powodując błędów. Błędy zaczynają się pojawiać po zapisana pliku. Zakładam, że w momencie zapisu excel wprowadza poprawki, które powodują późniejsze błędy.
ID posta: 424115 Skopiuj do schowka
 
 
Waldek 
Excel Expert


Wersja: Win Office 2019
Pomógł: 447 razy
Posty: 1847
Wysłany: 12-01-2023, 15:03   

Może nazwy zmiennych masz nieodpowiednie? Nie da się nic konkretnego napisać bo nie podajesz kodu.
ID posta: 424117 Skopiuj do schowka
 
 
Tajan


Pomógł: 5234 razy
Posty: 11414
Wysłany: 12-01-2023, 17:18   

hanss9, załącz przykładowy plik w którym ten błąd się pojawia.
ID posta: 424122 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 12-01-2023, 21:59   

Próbowałem dodać załącznik ale plik jest za duży bo ma prawie 5MB a nie wiem co jeszcze usunąć by pokazać problem i nie usunąć elementu, który go powoduje. Dlatego też spróbuje wysłać bezpośrednio na emaila.
Mam nadzieje, że przy otwarciu pojawi się błąd o którym mówię. Plik jest mocno rozbudowany i zawiera wiele formularzy i wymaga mojego komentarza jak to działa. A mianowicie po otwarciu pliku uruchamia się makro w tle startowego okna powitalnego, które aktualizuje dwie zakładki (bazę osób i bazę firm) na podstawie innego pliku excel. Większości formularzy wywołuje się po dwukrotnym naciśnięciu myszy w odpowiedniej kolumnie. Plik rozpoznanie użytkownika wiec dobrze by było wpisać w module "tablicadanych" nazwie użytkownika komputera by z tego tytułu nie wyskakiwały komunikaty.
Generalnie cała baza służy do rejestrowania postępowań przetargowych. Taką bazę ma każdy zakupowiec i przy jej pomocy zapisuje wszystkie dane. Dane ze wszystkich baz są przesyłane do jednego pliku excel, na podstawie którego jest ustalana odpowiednia numeracja.
Do tego baza służy do zakładania folderów, generowania protokołów w word, wysyłania e-maili itp.
ID posta: 424132 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 12-01-2023, 22:02   

Teraz widzę, że na przy próbie wysłania e-maila nie ma możliwości dodania załącznika. Pytanie czy jest możliwości przekazania pliku, który ma 5MB???
ID posta: 424133 Skopiuj do schowka
 
 
master_mix 
Excel Expert



Wersja: Win Office 365
Pomógł: 1216 razy
Posty: 2324
Wysłany: 12-01-2023, 22:49   

wystarczą same kody wklejone w posta ;-)
_________________

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: 424135 Skopiuj do schowka
 
 
Tajan


Pomógł: 5234 razy
Posty: 11414
Wysłany: 12-01-2023, 23:01   

hanss9, zawartość arkuszy możesz usunąć. Istotny jest kod VBA umieszczony w pliku gdyż stałe (Const) nie mają związku z danymi.
ID posta: 424136 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 12-01-2023, 23:04   

nie wiem czy da się wkleić kod, który może powodować problem ale spróbujmy
poniżej wklejam zadeklarowane stałe, których excel 2019 nie widzi na niektórych komputerach.
Stałe zadeklarowałem w osobnym module

Kod:

Option Explicit

'Użytkownik docelowy
    Public Const UZYTKOWNIK As String = 196104

'wersja programu
    Public Const WERSJA As String = "12.01.2023"
    Public Const ROK As String = "2023"

'Nazwy plików
    Public Const NAZWA_PLATFORMY_GLOWNEJ As String = "REJESTR ZAKUPÓW GŁÓWNY 2023.xlsx"
    Public Const NAZWA_PLATFORMY As String = "REJESTR ZAKUPÓW PODRZĘDNY 2023 (" & WERSJA & ").xlsm"
    Public Const NAZWA_PLIKU_FIRM As String = "BAZA KONTRAHENTÓW.xlsx"
    Public Const NAZWA_PLIKU_OSOB As String = "BAZA OSÓB.xlsx"
    Public Const Szablon_SIWZ As String = "Szablon SIWZ.docx"
    Public Const NAZWA_FOLDERU_POST_POW50 As String = "POSTEPOWANIA Pow 50tyś"
    Public Const NAZWA_FOLDERU_POST_DO50 As String = "POSTĘPOWANIA Do 50tyś"
   
'nazwa arkuszy
    Public Const ARKUSZ_OFERENCI As String = "OFERENCI"
    Public Const ARKUSZ_REJ_POST As String = "REJESTR POSTĘPOWAŃ"
    Public Const ARKUSZ_OS_KOM As String = "OSOBY"
    Public Const REJESTR_SYSTEMOWY As String = "REJESTR SYSTEMOWY"
    Public Const REJESTR_SYSTEMOWY_2 As String = "SYS REJ POS"
   
 'Istotne wartosci
    Public Const POST_UPR As Long = 6000
    Public Const MAŁA_KOMISJA As Long = 50000
    Public Const UMOWA As Long = 200000
    Public Const UCHWAŁA_ZARZA As Long = 250000
    Public Const UCHWAŁA_RADY As Long = 2000000
   
'ścieżki lokalizacji plików docelowa
    Public Const BAZA_FIRM As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & NAZWA_PLIKU_FIRM
    Public Const BAZA_OSOB As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & NAZWA_PLIKU_OSOB
    Public Const LokRejPosGlow As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & NAZWA_PLATFORMY_GLOWNEJ
    Public Const LokSzablonSIWZ As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & Szablon_SIWZ
    Public Const Lok_Folderu_Pos_Do50 As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & NAZWA_FOLDERU_POST_DO50
    Public Const Lok_Folderu_Pos_Pow50 As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & NAZWA_FOLDERU_POST_POW50
ID posta: 424137 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 12-01-2023, 23:40   

Powycinałem wszystko co tylko możliwe

REJESTR ZAKUPÓW PODRZĘDNY 2023 (12.01.2023).zip
Pobierz Plik ściągnięto 17 raz(y) 714.28 KB

ID posta: 424138 Skopiuj do schowka
 
 
Tajan


Pomógł: 5234 razy
Posty: 11414
Wysłany: 12-01-2023, 23:59   

U mnie wszystkie stałe są widoczne. A tak w ogóle, w jaki sposób objawia się u ciebie ten brak widoczności? Bo ja dodałem nowy moduł ogólny i wpisałem prostą procedurę:
Kod:
Sub test()
MsgBox WERSJA
End Sub

Excel wyświetlił mi wartość stałej, czyli "12.01.2023".
Możesz to wykonać u siebie?
ID posta: 424140 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 13-01-2023, 07:31   

Też wpadłem na ten sam pomysł i efekt jest taki, że pokazuje u mnie puste okno.
Sytuacja się naprawia jak dodam jeszcze jedną stała i w tedy już jest ok i zaczyna widzieć wszystkie stałe. Niestety problem często powraca po ponownym uruchomieniu pliku a następnie się zawiesza i albo plik nie odpowiada albo całkiem się zamyka.

Jeśli przekopiuje jeszcze raz plik na pulpit to na początku od nowa nie widzi stałych.
Zastanawiam się czy czy problem nie występuje jak plik jest na pulpicie?
Muszę to sprawdzić bo być może problem leży po stronie windowsa albo antywirusa a nie po stronie excela?
ID posta: 424143 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 13-01-2023, 07:41   

Lokalizacja pliku niestety nie ma znaczenia :-/
ID posta: 424144 Skopiuj do schowka
 
 
master_mix 
Excel Expert



Wersja: Win Office 365
Pomógł: 1216 razy
Posty: 2324
Wysłany: 13-01-2023, 08:49   

hanss9 napisał/a:
których excel 2019 nie widzi na niektórych komputerach.
Stałe zadeklarowałem w osobnym module

Błędne deklaracje to np:
Kod:
Public Const BAZA_FIRM As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & NAZWA_PLIKU_FIRM

Nie deklaruj tak stałych, w niektórych przypadkach (zdarza się rzadko) powoduje to błędy kompilacji.
Nie śledziłem nigdy ani nie drążyłem tematu, jeżeli chodzi o kompilowanie takiej "sklejonej" deklaracji, ale sam doświadczyłem przypadków błędu z tym związanego
deklaruj :
Kod:
Public Const BAZA_FIRM As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\BAZA KONTRAHENTÓW.xlsx"
_________________

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: 424148 Skopiuj do schowka
 
 
hanss9
Fan Excela


Posty: 60
Wysłany: 13-01-2023, 11:32   

master_mix napisał/a:

Kod:
Public Const BAZA_FIRM As String = "M:\REJESTR POSTĘPOWAŃ PRZETARGOWYCH\2023\" & NAZWA_PLIKU_FIRM

Nie deklaruj tak stałych, w niektórych przypadkach (zdarza się rzadko) powoduje to błędy kompilacji.


Poprawiłem wg. instrukcji i teraz stałe są definiowane tylko jako stałe bez odwołania do innej stałej ale to nie rozwiązało problemu :-/
często po odpaleniu stałe są puste
ID posta: 424155 Skopiuj do schowka
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
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

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Theme xandgreen created by spleen& Programosy modified v0.3 by warna
Opieka techniczna www.wip.pl

Archiwum

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