You should be able to keep all original data types by using FILTER
rather than QUERY
, e.g.:
=IFERROR(FILTER(IMPORTRANGE(NameList!C3,"Sheet9!C14:J18"),IMPORTRANGE(NameList!C3,"Sheet9!G14:G18")="Transmit"))
I will add that, if you plan to be importing more than this one formula's worth of data using IMPORTRANGE, it will be more efficient to use IMPORTRANGE to import into its own sheet in your destination spreadsheet the entire range you'll ever want to reference from it, and then write your processing formulas referencing that new sheet rather than by making individual IMPORTRANGE calls (which will slow down your sheet). If you do use the one IMPORTRANGE call to get all the data you'll need into the destination sheet, you can just hide it and leave it in the background if you like.