L'esempio di Simon non ha funzionato per me e sospetto che sia una differenza linguistica. In C # ecco come appare la mia stringa di formato di lavoro:
var linebreak = (i++ == list.Count) ? "" : "\r\n";
csv += String.Format("=\"{0}\",{1},{2},{3},=\"{4}\"{5}",
item.Value, item.Status, item.NewStatus, item.Carrier, c.Status, linebreak);
e questo è come appare il file di output:
="abababababab",INVALID,INVALID,USPS,="",
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9400110200793482982812",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9400110200793482982812",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9400110200793000216184",UNKNOWNSTATUS,INVALID,USPS,=""
Come si può vedere, il formato nel file di output ="VALUE",
non è quello "=""VALUE""",
che credo possa essere una convenzione di Visual Basic.
Sto usando Excel 2010. Per inciso, Fogli Google non aprirà / convertirà un file formattato in questo modo. Funzionerà se rimuovi il segno di uguale in questo modo "VALUE",
- Excel aprirà comunque il file ma ignorerà il fatto che vuoi che le tue colonne siano stringhe.