My solution (if I understand your problem correctly)...
would be to name the 'sand' object something like 'sediment' or 'detritus' or 'worn path' and forget the whole problem all together. But, you obviously would know that so I don't think that is what you want.
Or... and I haven't tried this (edit: yes I did... see below)... could you add a command to the room like 'look at sand; x sand; look at floor; etc; etc;' and add the proper print message script (and not have an actual 'object' named 'sand' in there at all)? This could give you a descriptive feedback you'll want. Also, could you add a command like 'get sand; get floor; take floor; etc; etc' and add a script to that which moves 'clawful of sand' to your inventory from your 'holdingroom''? The add a script which moves 'drop sand' to 'holdingroom' again. You could just add to the in-room description the seeming presence of the sandy/dirty floor so the player recognizes it as relevant. Just thinking out loud... I've never tried to add a command for built-in Quest commands like take and drop.
^Of course, you would have to throw in your 'If' commands to your take/drop command to check if player is carrying sand already.
Got bored and just tried it out. Seems like the above works correctly. If this were my game, I'd be happy with the results!

Good luck!
Happy Gaming.
XanMag