Word birleştirme alanlarındaki bir OR deyimi ile birçok değeri nasıl karşılaştırabilirim?


1

Yapmak istediğim şey:

{ IF v1 = 0 OR v2 = 0 "Lorem Ipsum.." }

Word birleştirme alanı sözdiziminde bir OR yazmak nasıl ?

Özellikle Word 2013 için soruyorum - sözdiziminin 2013 yılında değiştiğini düşünüyorum.


Çalışmıyor gibi görünüyor. Sanırım 2013'teki sözdizimi artık MERGEFIELD kelimesini kullanmıyor. Belki de örneğiniz Word’ün eski sürümlerinde çalışır.
fleksobot

Yapılabileceğini sanmıyorum. Sözdiziminin çok basit olduğunu düşünüyorum, bu bir IF ELSE THENbildiridir office.microsoft.com/en-gb/word-help/…
Dave

Yanıtlar:


2

V1, v2, MERGE alanları ise, genel durumda, {MERGEFIELD v1} ve {MERGEFIELD v2} gerekir. Daha sonra böyle bir yapı kullanarak bir VEYA yapabilirsiniz:

{ IF { =OR({ COMPARE { MERGEFIELD v1 } = 0 },{ COMPARE { MERGEFIELD v2 = 0 }) } = 0 "Lorem Ipsum.." }

(Her zamanki gibi, tüm {}, ctrl-F9 tuşlarını kullanarak Windows Word'e ekleyebileceğiniz özel alan kodu parantez çiftleri olmalıdır.

Veya kısa sonuç metinleri için doğru sonucu elde etmek için sayısal bir resim düğmesi kullanabilirsiniz, örneğin

{ =OR({ COMPARE { MERGEFIELD v1 } = 0 },{ COMPARE { MERGEFIELD v2 = 0 }) }) \#"'';'';'Lorem Ipsum..'" }

Daha fazla şirket için OR'ları yuvalamanız gerekir

Bu durumda siz de böyle şeyler yapabilirsiniz

{ IF { =ABS({ MERGEFIELD v1 })+ABS({ MERGEFIELD v2 }) } = 0 "Lorem Ipsum.. }

FWIW Sözdiziminin Word 2013'te bu alanda değiştiğine inanmıyorum, ancak böyle bir farkın örneği varsa, lütfen paylaşın!


1

Yukarıdaki ilk örnek, yanlış olduğunu düşünüyorum. İkinci doğru görünüyor. KARŞILAŞTIRMAK eğer doğruysa 1 verir; 0 ise yanlış. = VEYA da bu şekilde çalışır - aritmetik. Öyleyse, eğer COMPARE önerilerinizden herhangi biri doğruysa, onlardan OR değeri 1 olacaktır. COMPARE önermelerinden herhangi biri doğruysa, "Lorem Ipsum" çıktısını almak istiyorsunuz. Bu nedenle, IF, 0 ile değil 1 ile karşılaştırılmalıdır. Alternatif olarak, 0 ile karşılaştırıldığında, "Lorem Ipsum", bir FALSE eşleşmesi için çıkarılabilir. Bunun diğer bir hata olduğunu düşünüyorum: IF'nin çıktı için hem doğru hem de yanlış argümanlar beklediğini düşünüyorum. {IF <condition> <true-text> <false-text>}.

Daha karmaşık mantıksal koşullar, yaratıcı olarak tekrar aritmetik kullanılarak ekonomik (iç içe geçmeden) ifade edilebilir. Söylemek gerekirse, üç maddeden birinin doğru olması yeterliyse , doğruluk değerlerinin toplamı IF için bir koşul olarak kullanılabilir. Hepsi yanlışsa, sonuç sıfır olur. Genel aritmetik, {=} kullanarak Word alanlarına uygulanabilir. Örneğin:

{IF {=({COMPARE {MERGEFIELD v1} = 0} + {COMPARE {MERGEFIELD v2} = 0} + {COMPARE {MERGEFIELD v3} = 0})} = 0 "None are zero." "At least one is zero."}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.