In reply to OwenF: any delivery not sent to the card holder address then the CC company do not need to insure or cover if anything goes wrong, therefore businesses lose out, so as a simple security measure, first order goes to card holder address, then once delivered and deemed safe, OK to ship elsewhere,
Large online companies don't enforce it, take the risk and do lose out on a percentage due to this
One way around this which I have seen used is to change your CC card address to your work address, order something, then change it back afterwards! either that or order something small that fits into a mailbox
personally I would not complain at the store, they are taking security measures, which are perfectly reasonable, considering they could insist on all deliveries to cardholder address only