lørdag 1. juni 2024

Hvordan sette inn spesialtegn og anførselstegn/hermetegn i regnearksformler

For stakkarer som meg, altså typofile, kan det være stridt å ta til takke med enkel formatering av tekst. Men om du er typofil eller ei: Dersom du ønsker å lage en formel som slår sammen tekst og den teksten må inneholde anførsels­tegn, hvordan i all verden gjør du det når selve formelstrukturen også krever anførselstegn?

Eksempelbilde fra regnskapsboka mi
Eksempelbilde fra regnskapsboka mi, som viser tre innbetalinger der en gjentatt tekst er vist med vinkel-sitattegn rundt.

I bildet ser du at det ikke var noe problem å få spesialtegnene til å vises i den sammenkjedete formelen. Hvordan gjør man det? Med å kalle på spesialtegn-funksjonen. Det er faktisk ikke vanskelig. Her er formelen jeg brukte (først på nynorsk, så på bokmål):

=VISS(H8="";"";"Merka "&TEIKNKODE(171)&"VXXXXXXXXXXn"&TEIKNKODE(187)) =HVIS(H8="";"";"Merka "&TEGNKODE(171)&"VXXXXXXXXXXn"&TEGNKODE(187))(

Strukturforklaring

Formelen består av to deler: en viss()-formel (bokmål: hvis()) og en type sammenkjedet formel som siste ledd. Jeg skal forklare hver av dem i tur og orden.

hvis()-formelen

En hvis()-formel består alltid av tre deler: Hvis punkt 1 stemmer, gjør punkt 2; hvis ikke, gjør punkt 3. Hvis vi ser for oss at celle A1 har verdien 1 og celle B1 har verdien 2, kan en svært enkel formel i A2 se slik ut: =HVIS(A1>B1;"Større";"Mindre") Denne formelen viser da teksten «Mindre», siden formelen først sjekker verdiene mot hverandre, finner ut at A1 er mindre, og derfor hopper over punkt 2 og gir teksten som står i punkt 3 i stedet. Struktur: hvis, dermed, ellers.

tegnkode()-delen av formelen

Det er to måter å kjede sammen tekst på: enten med å bruke formelen kjed.saman()/kjed.sammen(), eller ved å liste alt som skal kjedes sammen etter hverandre og binde dem sammen med &-tegnet. I dette tilfellet valgte jeg det siste, kun for å gjøre det kompakt.

Problemet er at når man skal kjede sammen tekst slik, må all teksten bindes sammen med anførselstegn. Hvis man da ønsker å vise anførselstegn, må disse hentes inn på annet vis. Alt som kommer fra "Merka til TEGNKODE(187) er del av hvis()-formelens siste, tredje punkt, takket være &-tegnene.

Men hvordan finner jeg ut hva tegnkodene er? Selv synes jeg det enkleste er å hente dem fra &what;, ei side som lar deg få se alt som finnes av tegn i hele verden. Men hvis du bare vil ha en enkel oversikt, kan jeg anbefale posten min Korrektur: Tegnsetting Ⅱ. Der er det ført opp tastekombinasjoner for alle tegnene. Tastatursnarveien som er ført opp der samsvarer nesten alltid med desimalverdien av Unicode-kodepunktet til et tegn. Tegnene «/» har Unicode-kodepunkt U+ab og U+bb, som regnet om til desimale verdier blir henholdsvis 171 og 187, altså det samme som tastatursnarveiene Alt + 0171 og Alt + 0187. (Merk at 0-en foran ikke er valgfri.)

Så svaret på spørsmålet: Hvordan setter du inn spesialtegn? Med å kalle på dem med formelen TEIKNKODE()/TEGNKODE() som på engelsk er CHAR() og sette inn desimalverdien til tegnet mellom parentesene. Disse skal ikke stå i gåsøyne; de skal altså være slik:

TEIKNKODE(171) TEGNKODE(171) CHAR(171)

Har du spørsmål? Bare spør meg, så skal jeg gjøre mitt beste for å hjelpe deg.

P. S.: For å regne om et Unicode-kodepunkt til desimalverdien, kan du bruke formelen HEKSTILDES(). I parentesen skriver du inn den heksadesimale verdien innenfor skrivemaskinhermetegn, f.eks. HEKSTILDES("ab") som da gir deg resultatet 171.

Ingen kommentarer :

Legg inn en kommentar

Jeg har nå valgt å ta sjansen på å la alle som ønsker få kommentere. For å forhindre uønskede robotkommentarer, har jeg valgt å slå på kommentarmoderering.

Ta hensyn og les over det du har skrevet før du sender det; et lite øyeblikk ekstra kan ofte gjøre verden et lite knepp bedre.