ID tematu: 9449
 |
data z Excela, przypomnienie w kalendarzu Outlooka |
| Autor |
Wiadomość |
Servus
świeżak

Posty: 3
|
Wysłany: 2008-10-20, 20:48 data z Excela, przypomnienie w kalendarzu Outlooka
|
|
|
| pytanie pewnie z kategorii prostych ale w FAQ nie znalazłem. mam w arkuszu zestawienie płatności z ich terminami oczywiscie. Jak zadziałać, żeby 1 dzień przed terminem wyskakiwało przypomnienie w outlooku? |
|
 | ID posta:
48982
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
rodzyneek
Exceloholic


Pomógł: 28 razy Posty: 156
|
Wysłany: 2008-10-20, 21:43
|
|
|
do poniższego makra można ustawić różne warunki i tak dalej ale sama zasada tworzenia przypomnienia wyglada tak:
| Kod: | Sub outllok_przypomnienie()
Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set przypomnienie = OutApp.CreateItem(1)
On Error Resume Next
With przypomnienie
.Start = "2008-10-20 22:00" '<- początek zdarzenia - możesz podać odwołanie do komorki w tórej znajduje się data i godzina np. range("A1")
.End = Range("A2") 'tak jak wyżej tylko że zakończenie zdarzenia
.AllDayEvent = False '<- czy wydarzenie całodzienne true/fales
.Subject = "przykładowe przypomnienie" '<- temat
.Body = "jakaś treść" '<-treść
.ReminderMinutesBeforeStart = 15 '<- przypomnienie 15 min. (podawane w minutach)
.ReminderSet = True '<-potwierdzenie ustawienia przypomnienia
.Save '<- zapis
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub |
|
|
 | ID posta:
48986
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
Servus
świeżak

Posty: 3
|
Wysłany: 2008-10-20, 21:56
|
|
|
| rodzyneek! dzięki za podpowiedz, sorry że męczę, ale nie chciałem jużw pierwszym moim poście robić burzy w szklance wody. Pracuje na macu z neo office (wiem że to forum excel). Kalendarz outlook współpracuje świetnie z macowym ical'em, masz moze jakies doswiadczenie w tym wzgledzie? Jak w Neo office wrzuce to makro, a outlooka zastapie iCal.app zadziała? Wiem, że to pytanie z cyklu "niech zrobi to ktos za mnie" ale szczerze mowie jestem słaby w te klocki, nie chciałbym siedziec całą noc nad czymś, co inni z góry wiedzą że sie nie uda. dzięki i powodzenia |
|
 | ID posta:
48987
|
|
|
 |
rodzyneek
Exceloholic


Pomógł: 28 razy Posty: 156
|
Wysłany: 2008-10-20, 22:01
|
|
|
niestety nie mam takiego doświadczenia ale najlepiej bedzie jak sprobujesz
i daj znac czy działa |
|
 | ID posta:
48988
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
Servus
świeżak

Posty: 3
|
Wysłany: 2008-10-20, 22:05
|
|
|
dzięki |
|
 | ID posta:
48989
|
|
|
 |
brachu
EXCELent Man

Pomógł: 1 raz Posty: 144
|
Wysłany: 2008-11-13, 14:21
|
|
|
| rodzyneek napisał/a: | do poniższego makra można ustawić różne warunki i tak dalej ale sama zasada tworzenia przypomnienia wyglada tak:
| Kod: | Sub outllok_przypomnienie()
Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set przypomnienie = OutApp.CreateItem(1)
On Error Resume Next
With przypomnienie
.Start = "2008-10-20 22:00" '<- początek zdarzenia - możesz podać odwołanie do komorki w tórej znajduje się data i godzina np. range("A1")
.End = Range("A2") 'tak jak wyżej tylko że zakończenie zdarzenia
.AllDayEvent = False '<- czy wydarzenie całodzienne true/fales
.Subject = "przykładowe przypomnienie" '<- temat
.Body = "jakaś treść" '<-treść
.ReminderMinutesBeforeStart = 15 '<- przypomnienie 15 min. (podawane w minutach)
.ReminderSet = True '<-potwierdzenie ustawienia przypomnienia
.Save '<- zapis
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub |
|
Witam ponownie.
Jakoś sobie z tym poradziłem . Jednak mam nastepujące pytanie :
Czy istnieje mozliwość wysłania przypomniena jednocześnie do osób które dostaja maila . Bo jak narazie tylko ja otrzymuje potwierdzenie przyjecia przypomnienia
literki.rar
|
Pobierz Plik ściągnięto 102 raz(y) 18.73 KB |
|
|
 | ID posta:
50742
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
Andy
Fan Excela


Pomógł: 4 razy Posty: 67
|
Wysłany: 2009-03-02, 16:12
|
|
|
Witam,
Znalazłem ten topic i powiem, że jego zawartość mnie zaciekawiła ale mam pytania:
1. Gdzie wpisujemy to makro? This workbook? EDIT: w this workbook zadziałało
2. Czy ono działa na wyłączonym pliku? EDIT: Działa na wyłączonym! SUPER!!!
3. Jak w pliku będzie ileś dat to jak to zadziała?
4. Rozumiem, że jak sobie to wpiszę do beforeclose to się będzie uruchamiało po zamknięciu lub savie na pliku?
Mam plik z datami wyjścia przelewów - takie makro byłoby idealne do przypominania o tym.
A. |
|
 | ID posta:
59380
|
|
|
 |
kermit
słuchacz

Posty: 8
|
Wysłany: 2009-05-08, 12:33
|
|
|
Witam,
Mam pytanie do powyższego makra. Chciałbym go użyć w pliku z listą spraw do załatwienia gdzie przypomnienia powinny się pojawiać różnym osobom przypisanym do sprawy jako prowadzące temat. (wg schematu: temat, data, os. odpowiedzialna) Plik znajduje się na dysku sieciowym.
Powyższe makro (takze po wstawieniu do ThisWorkbook) nie działa mi również na wyłączonym pliku jak pisał wcześniej Andy. Właściwie to działa tylko po uruchomieniu go z palca.
Będę wdzięczny za wskazówki,
K. |
|
 | ID posta:
64471
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
mirag
słuchacz

Posty: 13
|
Wysłany: 2012-01-02, 10:42
|
|
|
Witam
Wykorzystałem powyższy skrypt do mojego pliczku (załącznik) jednakże nie za każdym razem dodaje mi przypomnienie do Outlooka :( i nie wiem czemu tak się dzieje. Mógłby ktoś spojrzeć i mi pomóc?
Co ciekawe np jak dam datę (przypomnienie) gdzieś tak z wyprzedzeniem 20 dni to działa a jak datę np dzisiejszą to nie dodaje przypomnienia ;/ (skrypt leci bez błędów). Ogólnie działa jak chce.
P.s. I jeszcze jedno - jakby ktoś był łaskawy i popatrzał na skrypt bo mam małe doświadczenie z VBA a w moim skrypcie mogą być przypadki których do końca nie rozumiem a zastosowałem bo działało ;)
Zgłoszenia.zip
|
Pobierz Plik ściągnięto 19 raz(y) 61.99 KB |
|
_________________ początkujący ;) |
|
 | ID posta:
142650
|
|
|
 |
OShon
Excel Expert


Zaproszone osoby: 41
Pomógł: 620 razy Posty: 2037
|
Wysłany: 2012-01-02, 11:58
|
|
|
| mirag napisał/a: | | (skrypt leci bez błędów). Ogólnie działa jak chce. |
Pewnie dla tego ze masz w kodzie olewajkę, która po napotkaniu błędu nie będzie monitować zwracając uwagę na błędną linię kodu ale poleci dalej: | Kod: | | On Error Resume Next |
Poza tym wyłączasz zdarzenia: | Kod: | | Application.EnableEvents = False | to tak w jakimś konkretnym celu - czy tak dla jaj?
Jednakże nie to jest najgorszym błędem - to że co prawda jest ale szczątkowa obsługa błędu - to tez faktycznie cokolwiek wpiszesz w okna okresu to można zaliczyć za dobre lub złe.
Przede wszystkim daty isdate() użyj tą funkcję, a po drugie data końca ma być > początku - a takiej obsługi błędu brak.
Spróbuj użyć kontrolki DTPicker z zestawu CommonControls pliku mscomct2.ocx
Przynajmniej jeden błąd do obsługi ci odpadnie.
Ustawiasz czas przypomnienia na 18,5 godz. przed 0:00 = nie lepiej od razu wkleić godzinę? np:
| Kod: | .Start = TextBox3 & " 9:00"
.End = TextBox4 & " 18:00" |
a parametr .ReminderMinutesBeforeStart ustawić na Zero albo na 15min ?
Jeśli już nie chcesz używać godzin, to użyj parametru .AllDayEvent = True |
_________________ MVP Office System, moderator Outlook.pl|WSS.pl|CodeGuru.pl, praca: Business Developer, blog: VBATools |
|
 | ID posta:
142661
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
mirag
słuchacz

Posty: 13
|
Wysłany: 2012-01-02, 13:40
|
|
|
Na początku wiem że może być dużo rzeczy głupich ale tak jak pisałem wcześniej jestem laikiem.
Z tym
On
to już usunąłem,
co do daty wcześniej jest to przerabiane na datę (data i data2) więc użyłem tych zmiennych
odnośnie:
| Kod: |
Application.EnableEvents = False |
jest użyte wcześniej do wprowadzania danych (podobno tak jest lepiej) więc to zostawię tylko nie wiem czy czasem nie dać przed wprowadzaniem typowo do outlooka
| Kod: |
Application.EnableEvents = True | Jak myślisz?????
Co do przypominania to jest tak ustawione żeby przypominał dzień wcześniej o 6:30 i tak ma być - wiec tak to zostawię
No i ostanie:
| OShon napisał/a: |
Przede wszystkim daty isdate() użyj tą funkcję, a po drugie data końca ma być > początku - a takiej obsługi błędu brak.
Spróbuj użyć kontrolki DTPicker z zestawu CommonControls pliku mscomct2.ocx
Przynajmniej jeden błąd do obsługi ci odpadnie.
|
to muszę się doszkolić dlatego też się nie wypowiem ;) |
_________________ początkujący ;) |
|
 | ID posta:
142683
|
|
|
 |
OShon
Excel Expert


Zaproszone osoby: 41
Pomógł: 620 razy Posty: 2037
|
Wysłany: 2012-01-02, 14:32
|
|
|
| Cytat: | | wcześniej jest to przerabiane na datę | Gdzie jest przerabiane jak datę z palca wpisujesz - możesz wpisać ją jak chcesz, co będzie prowadziło do próby podstawienia tekstu jako daty i... kod się wykrzaczy - trzeba to obsłużyć i zamonitować zanim przystąpisz się do dalszych kroków.
Myślę że nie jest ci potrzebne .EnableEvents wcale.
Doszkól się doszkól - bo zadajesz pytanie a potem bronisz swojego obecnego stanowiska dziwiąc się jednocześnie skąd wychodzi błąd. |
_________________ MVP Office System, moderator Outlook.pl|WSS.pl|CodeGuru.pl, praca: Business Developer, blog: VBATools |
|
 | ID posta:
142688
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
mirag
słuchacz

Posty: 13
|
Wysłany: 2012-01-02, 21:52
|
|
|
| Kod: | If IsDate(TextBox3.Value) Then 'sprawdza czy wartość da się zamienić na date
Dim data As Date
data = CDate(TextBox3.Value) ' na wszelki wypadek zamiana wartość textbox3 na date
data = Format(data, vbMediumDate) ' po tej operacji data ma już napewno prawidłowy format
TextBox3.Value = data ' po wszystkim zapisujemy wynik powtórnie do texbox
Else
MsgBox "Wprowadzono nieprawidłowy termin lub data ma nieprawidłowy format rrrr-mm-dd", vbOKOnly, "Błąd"
TextBox3.SetFocus
Exit Sub
End If ' oczywiście całość można uprościć :) |
No tutaj jest sprawdzanie pod względem daty - takie samo jest do terminu zakończenia.
A co do "bronienia swojego stanowiska" to odpowiadam po to abyś mógł niektóre rzeczy zrozumieć - po co tak to zrobiłem. |
_________________ początkujący ;) |
|
 | ID posta:
142747
|
|
|
 |
OShon
Excel Expert


Zaproszone osoby: 41
Pomógł: 620 razy Posty: 2037
|
Wysłany: 2012-01-02, 23:17
|
|
|
Następny kroczek.
Skoro sprawdziłeś że jest datą to data - to liczba
Sprzwdź wiec czy przypadkiem początek nie jest większy od końca. Jeśli tak to komunikat "popraw" |
_________________ MVP Office System, moderator Outlook.pl|WSS.pl|CodeGuru.pl, praca: Business Developer, blog: VBATools |
|
 | ID posta:
142760
|
|
|
 |
|
EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email
|
mirag
słuchacz

Posty: 13
|
Wysłany: 2012-01-05, 17:57
|
|
|
| OShon napisał/a: | Następny kroczek.
Skoro sprawdziłeś że jest datą to data - to liczba
Sprzwdź wiec czy przypadkiem początek nie jest większy od końca. Jeśli tak to komunikat "popraw" |
poprawione tak pisałeś :)
pliczek działa coraz lepiej :) |
_________________ początkujący ;) |
|
 | ID posta:
143157
|
|
|
 |
|
|