Jak zrobić aby word wstawiał z automatu do dokumentu datę o jeden dzień późniejszą niż jest w kalendarzu?
1. Załóż arkusz w (tfu) ekselu (pisownia nazwy M$badziewia zamierzona).
2. wstaw w komurkę datę, w drugą komurkę dodaj funkcję dodającą jeden dzień (pisownia nazw elementów M$badziewia zamierzona - w ekselu są komurki, a nie komórki)
3. Wstaw w łorda tego eksela
alternatywnie
użyj VBA, napisz skrypt pobierający datę i dodający jeden dzień, a potem wstawiający wynik tam gdzie chcesz
ps. w narzędziach gógla jest funkcja "jutro" może w M$badziwiu też - sprawdź
ps2. nie używaj łorda, szkoda pieniędzy i miejsca na dysku
Znalazłem coś takiego. Jak użyć tego macra? https://word.tips.net/T001312_Automatically_Inserting_Tomorrows_Date.html
Sprawdziłem na wordzie 2010
1. widok ->makra->wyświetl makra
2. utwórz makro
3. edytuj makro
w edytorze VBA, który się odpali wpisz:
Sub Makro1()
Dim dzisiaj As Date
Dim jutro As Date
Dim jutrotext As String
dzisiaj = Date
jutro = DateAdd("d", 1, dzisiaj)
Selection.TypeText Text:=jutro
End Sub
4. zapisz (używając formatu z obsługą makr)
5. użyj
Sorki za spam, ale wywalił się przy dwóch obrazkach.
więcej informacji tu:
https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/dateadd-function
edytor z makrem w obrazku
ps. linijka Dim jutrotext As String niepotrzebna
ps2. przepraszam informatyków za toporność, ale ostatni program pod win napisałem w pascalu/lazarusie 10 lat temu, a w Basicu chyba jeszcze pod win3.11
ps3. jak to podłączyć pod ikonę/klawisz/menu musisz popytać gógle ;)
Dzięki super działa, ale mam pytanie czy to będzie się z automatu zmieniać jak taka normalna data? Czy za każdym razem muszę klikać uruchom macro?
To makro wstawia datę w miejscu kursora, aby to było automagicznie musiałbyś
napisać makro, które wstawia to w miejscu, które zdefiniujesz, a samo makro musiałoby się odpalać np. z każdym otwarciem dokumentu.
Nie używam worda - mam go bo potrzebuję office do inventora i dziś pierwszy raz worda odpaliłem ;) Niestety nie potrafię powiedzieć jak zdefiniować miejsce/pole w tekście i odwołać się do tego pola z makra - w excellu to proste - podajesz adres komórki (wiersz,kolumna) w tekście trzeba je jakoś zdefiniować.
Na totalną pałę - w miejscu gdzie chcę mieć jutrzejszą datę napisałbym tekst tak głupi, że na 100% nie wystąpi, w makro wywołałbym funkcję znajdź i zamień i zamieniałbym go na string z ostatniej linijki mojego kodu. Ale informatycy pewnie umarliby ze śmiechu gdyby to zadziałało.
Ten wyglądający na głupi sposób, który podałem w poście nr 4 wcale nie jest taki głupi, bo gdybyś pole jutro zdefiniował w polu excella i wstawiał je do worda, to za każdym wczytaniem w excellu data powinna się sama odświeżyć - o ile użyjesz w polu funkcji typu dziś+1.
Dopisek:
w linku, który przytaczasz w [6] jest napisane jak to oznaczyć i jak wywołać z nowym dokumentem w bardziej elegancki sposób, niż ja proponuję