Queries are not like forms where you can hide/show objects using vba. You cannot hide a column on the fly. You can edit your sql before it is run though, but the best solution is to have 2 queries: one that has the column and another that does not. Determine which should be run before hand.
Columns on a query do not have a property called visible even though it seems like it does when you look at the Query by Example screen. That check box only determines whether or not that column will be included in the SQL.