Tworzę list seryjny programu Word z arkusza programu Excel.
Teraz chcę sprawdzić, czy pole w programie Excel jest puste. Jeśli tak, wyślij tekst. Jeśli to jest nie pusty, wypisz szybką część.
Próbowałem go już kilka razy, ale nie mogłem go uruchomić. Może powinno to wyglądać tak:
{ IF RowXY = "" "No content in RowXY" { AUTOTEXT "Quickpart_Test" } }
Muszę tylko wiedzieć, jak powiedzieć programowi Word, powinien wypisać predefiniowany obszar, jeśli określony wiersz nie jest pusty. Szybka część (autotekst) zawiera również pola dla listu seryjnego.
Dzięki badaniom nie uzyskałem lepszego rozwiązania niż to. Moim ulubionym sposobem byłoby coś takiego:
{{ IF field == empty }}
This text comes out
{{ ELSE }}
Text nr. 2 comes out
{{ FINISH }}
Może zbliżam się do tego źle. Jeśli tak, czy jest lepsze rozwiązanie?
microsoft-excel
microsoft-word
mail-merge
Matt Backslash
źródło
źródło
Odpowiedzi:
Utwórz dwa wpisy Autotekstu - jeden dla kiedy twoje pole jest puste, a drugi dla niepustych wartości. W tym przykładzie zadzwonię do nich
AutoTextWhenEmpty
iAutoTextWhenHasValue
odpowiednio.Zakładając, że twoje pole jest nazywane
MyField
możesz użyćMERGEFIELD
funkcja testowania jego wartości i osadzania poprawnej pozycji Autotekstu w wynikowym dokumencie.Oto wzór:
{ AUTOTEXT { if { MERGEFIELD MyField }="" "AutoTextWhenEmpty" "AutoTextWhenHasValue" } }
Musisz użyć
CTRL
+F9
aby wstawić nawiasy klamrowe, nie możesz ich po prostu wpisać. Jeśli zrobisz to poprawnie, klamry pojawią się pogrubione. Oto zrzut ekranu zrobiony w programie Word 2010:źródło