I'm not sure from what you have written but are you saying that on a per record basis the report my print real values or the no activity message or does the report have records OR simply a no activity statement somewhere on the first page?
If you get real data per record or a no activity message in the same position AND this would be in a single field BUT you need to make the entries fit into a 'real' field or the 'no activity' field here is my suggestion.
Capture the field as it is no matter what it contains. We will use it as a work field.
Create a CALCULATED field for the REAL VALUE version of the data and give it a formula that only populates this field if the current data is NOT the no activity message.
Create a second CALCULATED field that only captures the data when it IS the no activity message.
Hide the originally captured field as you don't need to display it once you have the real fields working. Use the calculated field for your outputs.
If the message is spread across more than one 'real' field you could use a variation of the above. Capture the entire field as suggested. The no activity field will be as before. The multiple REAL fields can be derived form the large captured field by suitable 'slicing and dicing' methods which may involve the LSPLIT and RSPLIT functions (amongst others) and if the required fields have a mix of character and numeric outputs it is likely that the VAL function at least will be in your toolkit.
Not knowing how well you know the Monarch functions I'm not sure how much to add at this point. If you need more help the internal Help files are very useful in the first instance. If you can present a specific example of the format preferably with some realistic (even if not real) data there are a number of people here who may well offer specific suggestions about how to carve things up to get the data you require.