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: 73432 Skopiuj do schowka Automatyczny kalendarz
Autor Wiadomość
wiorek
Exceloholic


Posty: 106
Wysłany: 30-09-2022, 16:03   Automatyczny kalendarz

Hej,
Mam problem z formatem dat. W załączniku przesyłam plik z kalendarzem, uruchamia się on po naciśnięciu w komórkę w określonym zakresie. Problem polega na tym, że nie ważne czy skonwertuję czy ustawię daty ręcznie, za każdym razem po wywołaniu makra zmienia on format na amerykański mm/ddd/yyyy. Próbowałem zmienić na kilkanaście sposobów w vba ale za każdym razem fail. Poprosiłbym o pomoc, co zmienić aby format dat był np 30-Sep
Dodam, że ja i każda osoba w firmie ma ustawienia regionu komputera na United State i nie mamy możliwości tego zmienić, więc zakładam, że format się zaciąga stąd automatycznie na mdy ?

testsheet.xlsm
Pobierz Plik ściągnięto 12 raz(y) 49.39 KB

ID posta: 420919 Skopiuj do schowka
 
 
Kaper 



Zaproszone osoby: 2
Wersja: Win Office 365
Pomógł: 4362 razy
Posty: 8612
Wysłany: 30-09-2022, 17:46   

Nie wiem, czy zauważyłeś, że daty wstawiane do komórek to nie daty, a teksty.

Za wstawianie odpowiada ta linia:
Kod:
    Range(cCell).Value = Format(sDate, DatePickerX_DateFormat)
w module mdatepicker
więc jeśli zadowalają Cię teksty, to w tym module, na górze znajdziesz stałą z formatem i jak zmienisz ją np. na
Kod:
Public Const DatePickerX_DateFormat = "dd mmm"

to będzie się wstawiał 05 Sep itp.

Ja jednak proponowałbym zmianę pierwszej z tych linii na dwie:
Kod:
    Range(cCell).Value = sDate 'Format(sDate, DatePickerX_DateFormat)
     Range(cCell).numberformat = "dd mmm"

co spowoduje, że w kalendarzu będą prawdziwe daty, a nie teksty wyglądające jak daty.
_________________
Kaper Jej Królewskiej Mości :boss

Jeśli dane będą torturowane dość długo, przyznają się do wszystkiego
ID posta: 420920 Skopiuj do schowka
 
 
Maciej Gonet 
Excel Expert


Wersja: Win Office 365
Pomógł: 2827 razy
Posty: 8516
Wysłany: 30-09-2022, 17:48   

W module mDatePickerX jest deklaracja:
Kod:
Public Const DatePickerX_DateFormat = "d/m/yyyy"

Ona określa format wyświetlanych dat. Można ją dowolnie zmieniać.
Przykładowo taki zapis powinien zapewnić format, jaki chciałeś:
Kod:
Public Const DatePickerX_DateFormat = "d-mmm"
Skrót nazwy miesiąca jest w języku systemu operacyjnego.
Daty są w postaci tekstowej - tego nie zmieniałem.

testsheet.xlsm
Pobierz Plik ściągnięto 14 raz(y) 50.78 KB

ID posta: 420921 Skopiuj do schowka
 
 
wiorek
Exceloholic


Posty: 106
Wysłany: 30-09-2022, 23:08   

Dziękuję Wam, wyświetla się u mnie poprawnie, zobaczę w poniedziałek jak na innych stacjach to wygląda. Wszystkiego dobrego
ID posta: 420923 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