简体   繁体   English

Excel将1/1转换为日期(DD.MM.YYYY)

[英]Excel converts 1/1 as date (DD.MM.YYYY)

I am exporting a CSV from web app and I have a column Format which can be for example 1/1 or 1/6... and Excel converts it as 1.1.2017. 我正在从Web应用程序导出CSV,并且我有一列格式可以是例如1/1或1/6 ...,并且Excel会将其转换为1.1.2017。 or 1.6.2017. 或1.6.2017。

This is my function for export: 这是我导出的功能:

public function exportCSVPrint($id)
    {
        $tablePrint = DB::connection('mysql2')->table('mc_schaltdaten_print')->select('s_magazin', 'datum', 's_ausgabe', 's_ausrichtung', 's_jahrgang', 's_format', 's_seite', 's_seiten', 'brutto', 'pzn')->where('spotid', $id)->get();
        $csv        = \League\Csv\Writer::createFromFileObject(new \SplTempFileObject());

        $header = [Lang::get('language.magazine'), Lang::get('language.date'), Lang::get('language.ausgabeVersion'), Lang::get('language.seite'), Lang::get('language.seiten'), 'Format', Lang::get('language.ausrichtung'), Lang::get('language.anzeigenPreis')];
        $csv->setDelimiter(';');
        $csv->insertOne($header);

        foreach ($tablePrint as $t) {
            $rows = [
                [$t->s_magazin, $t->datum, $t->s_ausgabe, $t->s_seite, $t->s_seiten, $t->s_format, $t->s_ausrichtung, $t->brutto],
            ];

            $csv->insertAll($rows);
        }
        $csv->output($id . '.csv');
    }

How can I get it as original 1/1, not date format? 如何获得原始的1/1格式而不是日期格式?

Annoying isn't it? 是不是很烦?

Excel "helpfully" assumes that you've typed a date, with the year appropriately defaulted, when you type something like a / b . Excel“有帮助地”假定您键入日期时(例如,键入a / b ,并且适当地默认了年份。

You can retain the original text if you prefix the string with the single quotation character ' . 如果在字符串前加单引号'则可以保留原始文本。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM