I am using a 16F877A with a NewHaven serial display

The code is quite lengthy so I will only post relevant parts. My problem is SEROUT'ing a variable that is a WORD so first I set up the variables as this

Stage1OnS data word 100
Stage1OffS data word 110
Stage2OnS data word 200
Stage2OffS data word 220
Stage3OnS data word 300
Stage3OffS data word 330
Stage4OnS data word 400
Stage4OffS data word 440
Stage5OnS data word 500
Stage5OffS data word 550
Stage6OnS data word 600
Stage6OffS data word 660
Stage7OnS data word 700
Stage7OffS data word 770
Stage8OnS data word 800
Stage8OffS data word 880
Stage9OnS data word 900
Stage9OffS data word 990
Stage10OnS data word 1000
Stage10OffS data word 1010

then in a section of the code I SEROUT some of the above mentioned variables

Serout LCD,T9600,[Prefix,$45,LcdLine2, "10 ", #PreOn," ", #PreOff, Prefix,$45,LcdLine3,"1 ", #CurOn, " " , #CurOff, " ON", Prefix,$45,LcdLine4, "2 ", #NxtOn, " ", #NxtOff]

The CurOn, CurOff, NxtOn, and NxtOff variables show up on the LCD correctly.

The PreOn and PreOff do not. I am sure this is because the variables exceed 255. I have tried taking Low and High byte of PreOn and Preoff into another variable like variable=PreOn.LowByte+PreOn.HighByte yet the code does not complile.

What am I missing to get a full DATA WORD to display on my LCD?
Thanks in advance.
Toby