L'exemple de Simon n'a pas fonctionné pour moi, et je soupçonne qu'il s'agit d'une différence de langue. En C#, voici à quoi ressemble ma chaîne de format :
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);
et voici à quoi ressemble le fichier de sortie :
="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,=""
Comme on peut le voir, le format du fichier de sortie est le suivant ="VALUE",
pas "=""VALUE""",
ce qui, je crois, peut être une convention Visual Basic.
J'utilise Excel 2010. Par ailleurs, Google Sheets n'ouvrira pas/ne convertira pas un fichier formaté de cette manière. Il fonctionnera si vous enlevez le signe égal ainsi "VALUE",
- Excel ouvrira toujours le fichier mais ignorera le fait que vous voulez que vos colonnes soient des chaînes de caractères.