Why it needs to be in 1 transmission is it is sending via an HM-10, so when the phone receives the message it needs something to distinguish lat, long, time.
The HM-10 won't know the difference if you use one line or write each character with it's own Serial.write. The characters go out one at a time either way. If you sniffed the data line you wouldn't be able to tell the difference. When you call Serial.print the stuff you're printing gets added to a buffer and gets sent out by an interrupt. If you call another Serial print right after then that gets tagged onto the end of that buffer just the same as it would have if you had written one line.
I promise, there's no difference.
I have tried writing a variable like you said:
I never said anything like that. I was talking about writing a macro. Completely different thing.
First off, an int variable just hold numbers. It won't hold text. And secondly, you can't have a single variable holding two values like that. You could write a class or a struct or something that has more than one value in it, but that's a completely different thing and I only mention it because some pedant is going to say that it is technically possible. While that's true, it won't help you at all.
Because of the way the comma operator works this:
time1 = ("t", ago1);
is the same as:
time1 = ago1;
Seriously, what you need to do here is not worry about having it all in one line. Just use two separate print statements. It will not make any difference to the receiver.