Uruchomienie okna przy otwarciu dokumentu.
Uruchomienie okna przy otwarciu dokumentu.
Witam Wszystkich bardzo serdecznie.
Mam pytanie.
Czy znajdę gdzieś na forum temat w którym poruszono kwestię uruchamiania makra otwierającego okno do wprowadzenia danych?
Mam taki projekt, w którym notorycznie moi współpracownicy nie uzupełniają pola miesiąc i rok.
Na ten moment poradziłem sobie tak, że biją po oczach te dwa pola... okazuje się, że tylko mnie biją
Żadna forma motywacji nie pomaga!!!
Zostaliście moją ostatnią deską ratunku
Myślę, że rozwiązanie, gdy ktoś otowrzy dokument i z rozwijanej listy będzie musiał wybrać miesiąc i rok rozwiąże moj problem i utrze nosa moim niesfornym współpracownikom
Mam pytanie.
Czy znajdę gdzieś na forum temat w którym poruszono kwestię uruchamiania makra otwierającego okno do wprowadzenia danych?
Mam taki projekt, w którym notorycznie moi współpracownicy nie uzupełniają pola miesiąc i rok.
Na ten moment poradziłem sobie tak, że biją po oczach te dwa pola... okazuje się, że tylko mnie biją
Żadna forma motywacji nie pomaga!!!
Zostaliście moją ostatnią deską ratunku
Myślę, że rozwiązanie, gdy ktoś otowrzy dokument i z rozwijanej listy będzie musiał wybrać miesiąc i rok rozwiąże moj problem i utrze nosa moim niesfornym współpracownikom
Pozdrawiam Michał
OpenOffice3.3 na Windows 7
OpenOffice3.3 na Windows 7
Re: Uruchomienie okna przy otwarciu dokumentu.
Może ten wątek pomoże:
https://forum.openoffice.org/pl/forum/v ... =28&t=5408
W dokumencie Kopia Rejestr - Kopia-3b.ods (link do niego: https://forum.openoffice.org/pl/forum/d ... hp?id=2996) jest stworzone okno do wprowadzania danych.
Innym sposobem może być zastosowanie Poprawności danych z menu Dane - nie pozwolić na wprowadzenie istotnych danych dopóki te mmniej ważne nie zostaną wprowadzone.
Zostawiam plik z zastosowaną metodą, spróbuj wpisać dane do żółtych komórek
https://forum.openoffice.org/pl/forum/v ... =28&t=5408
W dokumencie Kopia Rejestr - Kopia-3b.ods (link do niego: https://forum.openoffice.org/pl/forum/d ... hp?id=2996) jest stworzone okno do wprowadzania danych.
Innym sposobem może być zastosowanie Poprawności danych z menu Dane - nie pozwolić na wprowadzenie istotnych danych dopóki te mmniej ważne nie zostaną wprowadzone.
Zostawiam plik z zastosowaną metodą, spróbuj wpisać dane do żółtych komórek
Ostatnio zmieniony śr gru 09, 2020 10:59 pm przez Rafkus, łącznie zmieniany 1 raz.
Powód: Usunięcie pliku, poniżej poprawiona wersja
Powód: Usunięcie pliku, poniżej poprawiona wersja
LibreOffice 7.4.6 (preferowany) oraz OpenOffice 4.1.6. Widows 10
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
Re: Uruchomienie okna przy otwarciu dokumentu.
I kolejne rozwiązanie:
Przypisz poniższe makro do zdarzenia Zapisz Dokument w twoim pliku. Wówczas podczas zapisywania pliku uruchomi się to makro i sprawdzi czy do komórek B2 i C2 w Arkuszu1 zostały wprowadzone jakieś dane. Jeśli nie to zostaje wywołane okienko do wprowadzenia danych i nie pozwolą na zamknięcie dopóki nie poda się poprawnych wartości.
Oczywiście podaj swoje dane: nazwę arkusza i komórki docelowe.
PS. A jeśli wystarczy tylko uzupełnić dane domyślne (do pewnych komórek wpisać tylko bieżący miesiąc i rok) to wystarczy takie makro:
Przypisz poniższe makro do zdarzenia Zapisz Dokument w twoim pliku. Wówczas podczas zapisywania pliku uruchomi się to makro i sprawdzi czy do komórek B2 i C2 w Arkuszu1 zostały wprowadzone jakieś dane. Jeśli nie to zostaje wywołane okienko do wprowadzenia danych i nie pozwolą na zamknięcie dopóki nie poda się poprawnych wartości.
Kod: Zaznacz cały
Sub dane
Dim Arkusz As Variant
Dim komorka1,komorka2 As Variant
dim i as integer
Arkusz = ThisComponent.Sheets("Arkusz1")
komorka1 = Arkusz.getCellRangeByName("B2")
komorka2 = Arkusz.getCellRangeByName("C2")
if komorka1.string="" then
Do
i = inputBox ( "Podaj numer miesiąca: liczbę z przedziału 1÷12" , "UWAGA", Month(Date))
'Month(Date) - zwraca numer aktualnego miesiąca, w powyższej instrukcji będzie to wartość domyślna.
Loop until i>0 and i<13
komorka1.value=i
endif
if komorka2.value=0 then
Do
i = inputBox ( "Podaj Rok z przedziału 2000÷2030" , "UWAGA", Year(Date) )
'Year(Date) - zwraca aktualny rok, w powyższej instrukcji będzie to wartość domyślna.
Loop until i>2000 and i<2030
komorka2.value=i
endif
End Sub
PS. A jeśli wystarczy tylko uzupełnić dane domyślne (do pewnych komórek wpisać tylko bieżący miesiąc i rok) to wystarczy takie makro:
Kod: Zaznacz cały
Sub dane2
Dim Arkusz As Variant
Dim komorka1,komorka2 As Variant
dim i as integer
Arkusz = ThisComponent.Sheets("Arkusz1")
komorka1 = Arkusz.getCellRangeByName("B2")
komorka2 = Arkusz.getCellRangeByName("C2")
if komorka1.string="" then komorka1.value = Month(Date)
if komorka2.string="" then komorka2.value = Year(Date)
End Sub
LibreOffice 7.4.6 (preferowany) oraz OpenOffice 4.1.6. Widows 10
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
Re: Uruchomienie okna przy otwarciu dokumentu.
Sądzę, że właściwsza jest pierwsza propozycja @Rafkus i to bez podawania domyślnej podpowiedzi.
Podpiął bym to makro pod akcję "Uruchom aplikację""Otwórz dokument", czyli aby nie pozwalało niczego wprowadzać dopóty, dopóki nie zostanie wprowadzona właściwa data.
Dlaczego tak? Bo ludzie pod koniec pracy, myślą już o innych sprawach i są mniej skoncentrowani. Mogą zatem popełnić błędy a dane, o które chodzi @michal.s, są kluczowe dla zestawienia.
Charakter przedstawionej ilustracji, świadczy o tym, że tabela jest raczej wypełniana danymi z innego niż bieżącego miesiąca. Przy takim podejściu współpracowników, i zaproponowaniu danych domyślnych, nacisną po prostu OK i zatwierdzą niepoprawne dane.michal.s pisze:...notorycznie moi współpracownicy nie uzupełniają pola miesiąc i rok.
Podpiął bym to makro pod akcję "Uruchom aplikację""Otwórz dokument", czyli aby nie pozwalało niczego wprowadzać dopóty, dopóki nie zostanie wprowadzona właściwa data.
Dlaczego tak? Bo ludzie pod koniec pracy, myślą już o innych sprawach i są mniej skoncentrowani. Mogą zatem popełnić błędy a dane, o które chodzi @michal.s, są kluczowe dla zestawienia.
Ostatnio zmieniony wt gru 08, 2020 2:30 pm przez Jermor, łącznie zmieniany 1 raz.
Powód: Pomyliłem akcję, która należy wybrać.
Powód: Pomyliłem akcję, która należy wybrać.
AOO 4.1.15, LO 24.8.2 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Re: Uruchomienie okna przy otwarciu dokumentu.
Dziękuję Rafkus bardzo cenne informacje.
Twoja wersja kody z opcją uruchamiania przy zapisie wydaje mi się bardzo dobra i myślałem, że już temat zamkniemy, ale...
No właśnie...
Jak przypisać makro do zdarzenia?
Próbowałem w ten sposób, ale nie ma do wyboru makra, które jest w pliku. Makro działa bez żadnego problemu przy wywołaniu go bezpośrednio z okna 'wykonaj makro'
Twoja wersja kody z opcją uruchamiania przy zapisie wydaje mi się bardzo dobra i myślałem, że już temat zamkniemy, ale...
No właśnie...
Próbowałem tego na różne sposoby i poległemRafkus pisze:Przypisz poniższe makro do zdarzenia Zapisz Dokument w twoim pliku.
Jak przypisać makro do zdarzenia?
Próbowałem w ten sposób, ale nie ma do wyboru makra, które jest w pliku. Makro działa bez żadnego problemu przy wywołaniu go bezpośrednio z okna 'wykonaj makro'
Pozdrawiam Michał
OpenOffice3.3 na Windows 7
OpenOffice3.3 na Windows 7
Re: Uruchomienie okna przy otwarciu dokumentu.
Nie spotkałem się z takim problemem, więc ciężko mi coś doradzić. Zazwyczaj makro przypisuję tak jak pokazałeś to na dołączonym obrazie, więc jestem zdziwiony że w oknie dialogowym Wybór makra w Bibliotece nie ma widocznego jeszcze twojego pliku.
A czy naprawdę używasz jeszcze OpenOffice 3.3??
- Załączniki
-
- poprawność.ods
- (11.8 KiB) Pobrany 228 razy
Ostatnio zmieniony czw gru 10, 2020 7:25 am przez Rafkus, łącznie zmieniany 2 razy.
Powód: Dodałem plik z zapisanym makrem
Powód: Dodałem plik z zapisanym makrem
LibreOffice 7.4.6 (preferowany) oraz OpenOffice 4.1.6. Widows 10
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
Re: Uruchomienie okna przy otwarciu dokumentu.
Używasz Apache OpenOffice. Warto zastanowić się nad zmianą i migracją do LibreOffice.
Może nawet nie dlatego, że Libre jest lepszy (bo jest) ale dlatego, że pracuje nad nim większy zespół i szybciej pojawiają się łatki.
@Jan_J z lekka ironią napisał o nowej wersji Apache, w której do Calca wprowadzono 4 modyfikacje, po roku stagnacji.
Ale do rzeczy. Coś jest schrzanione w Apache. U mnie także nie pojawiają się kontenery biblioteki w plikach, w sytuacji jaką opisałeś.
Możesz jednak przypisać makro wybierając polecenie "Narzędzia -> Dostosuj -> zakładka Zdarzenia".
Może nawet nie dlatego, że Libre jest lepszy (bo jest) ale dlatego, że pracuje nad nim większy zespół i szybciej pojawiają się łatki.
@Jan_J z lekka ironią napisał o nowej wersji Apache, w której do Calca wprowadzono 4 modyfikacje, po roku stagnacji.
Ale do rzeczy. Coś jest schrzanione w Apache. U mnie także nie pojawiają się kontenery biblioteki w plikach, w sytuacji jaką opisałeś.
Możesz jednak przypisać makro wybierając polecenie "Narzędzia -> Dostosuj -> zakładka Zdarzenia".
AOO 4.1.15, LO 24.8.2 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.