Остановить Excel от автоматического преобразования определенных текстовых значений в даты

Кто-нибудь знает, есть ли токен, который я могу добавить в свой csv для определенного поля, чтобы Excel не пытался преобразовать его в дату?

Я пытаюсь записать файл.csv из своего приложения, и одно из значений выглядит достаточно похоже на дату, когда Excel автоматически конвертирует его из текста в дату. Я попытался поместить все свои текстовые поля (включая поле, которое выглядит как дата) в двойные кавычки, но это не имеет никакого эффекта.

37 ответов

Решение

Я обнаружил, что, поставив '=' перед двойными кавычками, вы достигнете желаемого. Это заставляет данные быть текстовыми.

например. ="2008-10-03",="больше текста"

РЕДАКТИРОВАТЬ (согласно другим постам): из-за ошибки в Excel 2007, отмеченной Джеффькинсом, следует использовать решение, предложенное Эндрю: "=""2008-10-03"""

Я знаю, что это старый вопрос, но проблема скоро исчезнет. CSV-файлы легко генерируются из большинства языков программирования, довольно маленькие, легко читаемые человеком, с простым текстовым редактором, и вездесущие.

Проблема не только в датах в текстовых полях, но и в том, что числовые данные также преобразуются из текста в числа. Несколько примеров, где это проблематично:

  • Почтовые индексы
  • телефонные номера
  • правительственные идентификационные номера

который иногда может начинаться с одного или нескольких нулей (0), которые выбрасываются при преобразовании в числовое значение. Или значение содержит символы, которые можно спутать с математическими операторами (как в датах: /, -).

Два случая, о которых я могу думать, что решение "prepending =", как упоминалось ранее, может быть не идеальным,

  • где файл может быть импортирован в программу, отличную от MS Excel (на ум приходит функция слияния MS Word),
  • где удобочитаемость может быть важной.

Мой хак, чтобы обойти это

Если к значению предварительно / добавляется нецифровый и / или не датированный символ, значение будет распознано как текст и не будет преобразовано. Непечатный символ будет хорош, поскольку он не изменит отображаемое значение. Однако обычный старый пробел (\s, ASCII 32) не работает для этого, так как он отсекается в Excel, а затем значение все равно преобразуется. Но есть различные другие печатные и непечатные символы пробела, которые будут хорошо работать. Однако проще всего добавить (добавить после) простой символ табуляции (\t, ASCII 9).

Преимущества этого подхода:

  • Доступно с клавиатуры или с легко запоминающимся кодом ASCII (9),
  • Это не беспокоит импорт,
  • Обычно не беспокоит результаты слияния (в зависимости от макета шаблона - но обычно он просто добавляет широкий пробел в конце строки). (Если это, однако, проблема, посмотрите на другие символы, например, пробел нулевой ширины (ZWSP, Unicode U+200B)
  • не является большой помехой при просмотре CSV в блокноте (и т. д.),
  • и может быть удален путем поиска / замены в Excel (или Блокнот и т. д.).
  • Вам не нужно импортировать CSV, но можно просто дважды щелкнуть, чтобы открыть CSV в Excel.

Если есть причина, по которой вы не хотите использовать вкладку, найдите в таблице Unicode что-то еще подходящее.

Другой вариант

может быть для генерации файлов XML, для которых определенный формат также принимается для импорта более новыми версиями MS Excel, и который позволяет намного больше параметров, подобных формату.XLS, но у меня нет опыта в этом.

Так что есть разные варианты. В зависимости от ваших требований / приложения одно может быть лучше другого.


прибавление

Надо сказать, что более новые версии (Excel 2013+) MS Excel больше не открывают CSV в формате электронных таблиц - еще один быстрый удар в рабочем процессе, делающий Excel менее полезным... По крайней мере, существуют инструкции для его обхода. См., Например, этот Stackru: Как правильно отображать файлы.csv в Excel 2013?,

Отрабатывая решение Jarod и проблему, поднятую Jeffiekins, вы можете изменить

"May 16, 2011"

в

"=""May 16, 2011"""

У меня была похожая проблема, и это обходной путь, который помог мне без необходимости редактировать содержимое файла CSV:

Если у вас есть возможность присвоить файлу имя, отличное от ".csv", вы можете назвать его с расширением ".txt", например "Myfile.txt" или "Myfile.csv.txt". Затем, когда вы откроете его в Excel (не перетаскивая, а используя File->Open или список наиболее часто используемых файлов), Excel предоставит вам "Мастер импорта текста".

На первой странице мастера выберите "с разделителями" для типа файла.

На второй странице мастера выберите "," в качестве разделителя, а также выберите классификатор текста, если вы заключили значения в кавычки

На третьей странице выберите каждый столбец отдельно и назначьте каждому тип "Текст" вместо "Общий", чтобы Excel не связывался с вашими данными.

Надеюсь, это поможет вам или кому-то с подобной проблемой!

2018

Единственное правильное решение, которое сработало для меня (а также без изменения CSV).

Excel 2010:

  1. Создать новую рабочую книгу
  2. Данные> Из текста> Выберите файл CSV
  3. Во всплывающем окне выберите переключатель "Разграничить", затем нажмите "Далее>"
  4. Флажки разделителей: отметьте только "Запятая" и снимите флажки с других параметров, затем нажмите "Далее>"
  5. В "Предварительном просмотре данных" перейдите в крайнее правое положение, затем удерживайте клавишу Shift и щелкните последний столбец (при этом будут выбраны все столбцы). Теперь в "Формате данных столбца" выберите переключатель "Текст", затем нажмите "Готово".

Excel office365: (версия клиента)

  1. Создать новую рабочую книгу
  2. Данные> Из текста /CSV > Выберите файл CSV
  3. Обнаружение типа данных> не обнаруживать

Примечание: Excel office365 (веб-версия), поскольку я пишу это, вы не сможете этого сделать.

ПРЕДУПРЕЖДЕНИЕ. В Excel '07 (по крайней мере) есть (еще одна) ошибка: если в содержимом поля есть запятая, она неправильно анализирует ="field, contents", а помещает все после запятой в Следующее поле, независимо от кавычек.

Единственный обходной путь, который я нашел, это работает - исключить =, когда содержимое поля содержит запятую.

Это может означать, что есть некоторые поля, которые невозможно представить точно "правильно" в Excel, но сейчас я надеюсь, что никто не слишком удивлен.

При создании строки для записи в мой CSV-файл на C# мне пришлось отформатировать ее следующим образом:

"=\"" + myVariable + "\""

В Excel 2010 откройте новый лист. На ленте данных нажмите "Получить внешние данные из текста". Выберите файл CSV и нажмите "Открыть". Нажмите кнопку "Далее". Снимите флажок "Tab", поставьте галочку рядом с "Comma", затем нажмите "Next". Нажмите в любом месте первого столбца. Удерживая клавишу Shift, перетащите ползунок до тех пор, пока вы не нажмете последний столбец, затем отпустите клавишу Shift. Нажмите кнопку "Текст", затем нажмите "Готово".

Все столбцы будут импортированы как текст, как они были в файле CSV.

Все еще проблема в выпуске Microsoft Office 2016, довольно тревожная для тех из нас, кто работает с именами генов, такими как MARC1, MARCH1, SEPT1 и т. Д. Решение, которое я нашел наиболее практичным после генерации файла ".csv" в R, затем он будет открыт / открыт для пользователей Excel:

  1. Откройте файл CSV как текст (блокнот)
  2. Скопируйте его (Ctrl + A, Ctrl + C).
  3. Вставьте его в новый лист Excel - он будет вставлен в один столбец как длинные текстовые строки.
  4. Выберите / выберите этот столбец.
  5. Зайдите в Данные- "Текст в столбцы...", в открывшемся окне выберите "Разграничить" (далее). Убедитесь, что "запятая" помечена (пометка, что она уже покажет разделение данных на столбцы ниже) (далее), в этом окне вы можете выбрать нужный столбец и пометить его как текст (вместо общего) (Готово).

НТН

Вот простой метод, который мы используем при работе при создании файла csv, он немного изменяет значения, поэтому он не подходит для всех приложений:

Добавить пробел ко всем значениям в CSV

Это пространство будет удалено Excel из чисел, таких как "1", " 2.3" и " -2.9e4", но останется в датах, таких как " 01/10/1993", и в логических значениях, таких как " TRUE", что остановит их преобразование в внутренние типы данных Excel.

Он также предотвращает защелкивание двойных кавычек при чтении, поэтому надежный способ создания текста в CSV-файле остается неизменным в Excel. ДАЖЕ, если какой-то текст наподобие "3.1415", заключает его в двойные кавычки И ставит перед строкой пробел, то есть (используя одинарные кавычки, чтобы показать, что вы вводите) ' "3.1415"'. Тогда в Excel у вас всегда будет исходная строка, за исключением того, что она заключена в двойные кавычки и начинается с пробела, поэтому вам нужно учитывать их в любых формулах и т. Д.

Это единственный способ, которым я знаю, как сделать это, не вмешиваясь в сам файл. Как и в случае с Excel, я узнал об этом, часами стуча головой по столу.

Измените расширение файла.csv на.txt; это остановит Excel от автоматического преобразования файла при его открытии. Вот как я это делаю: откройте Excel на пустой лист, закройте пустой лист, затем File => Open и выберите файл с расширением.txt. Это заставит Excel открыть "Мастер импорта текста", где он задаст вам вопросы о том, как вы хотите, чтобы он интерпретировал файл. Сначала вы выбираете разделитель (запятая, табуляция и т. Д.), Затем (вот важная часть) вы выбираете набор столбцов столбцов и выбираете форматирование. Если вы хотите именно то, что находится в файле, выберите "Текст", и Excel отобразит только то, что находится между разделителями.

(Предполагая Excel 2003...)

При использовании мастера преобразования текста в столбцы на шаге 3 вы можете указать тип данных для каждого из столбцов. Нажмите на столбец в окне предварительного просмотра и измените неправильный столбец с "Общие" на "Текст".

Ни одно из предложенных здесь решений не является хорошим решением. Это может работать для отдельных случаев, но только если вы контролируете окончательное отображение. Возьмите мой пример: моя работа составляет список продуктов, которые они продают в розницу. Это в формате CSV и содержит коды деталей, некоторые из них начинаются с нуля, установленных производителями (не под нашим контролем). Уберите начальные нули, и вы действительно сможете найти другой продукт. Розничные клиенты хотят получить список в формате CSV из-за внутренних программ обработки, которые также находятся вне нашего контроля и отличаются для каждого клиента, поэтому мы не можем изменить формат файлов CSV. Нет префикса "=", нет добавленных вкладок. Данные в сырых файлах CSV верны; когда клиенты открывают эти файлы в Excel, начинаются проблемы. И многие клиенты не очень разбираются в компьютерах. Они могут просто открыть и сохранить вложение электронной почты. Мы думаем о предоставлении данных в двух немного разных форматах: один как Excel Friendly (используя предложенные выше варианты, добавляя TAB, другой как "master"). Но это может быть желательным, так как некоторые клиенты не поймут, почему мы должны это сделать. Тем временем мы продолжаем объяснять, почему они иногда видят "неправильные" данные в своих электронных таблицах. Пока Microsoft не внесет надлежащие изменения, я не вижу надлежащего решения этого вопроса, пока у человека нет контроля над тем, как конечные пользователи использовать файлы.

(EXCEL 2007 и позже)

Как заставить Excel не "определять" форматы даты без редактирования исходного файла

Или:

  • переименовать файл как.txt
  • Если вы не можете этого сделать, вместо открытия CSV-файла непосредственно в Excel создайте новую книгу, а затем перейдите к
    Data > Get external data > From Text
    и выберите свой CSV.

В любом случае, вам будут предложены параметры импорта, просто выберите каждый столбец, содержащий даты, и скажите Excel, чтобы форматировать как "текст", а не "общий".

То, что я сделал для этой же проблемы, было добавить следующее перед каждым значением CSV: "=""" и одну двойную кавычку после каждого значения CSV, прежде чем открывать файл в Excel. Возьмите следующие значения, например:

012345,00198475

Они должны быть изменены перед открытием в Excel, чтобы:

"="""012345","="""00198475"

После этого каждое значение ячейки отображается в виде формулы в Excel и поэтому не будет отформатировано как число, дата и т. Д. Например, значение 012345 выглядит как:

="012345"

Я на этой неделе встретился с этим соглашением, которое, кажется, является отличным подходом, но я нигде не могу найти на него ссылку. Кто-нибудь знаком с этим? Можете ли вы привести источник для этого? Я не искал часы и часы, но я надеюсь, что кто-то признает этот подход.

Пример 1: =("012345678905") отображается как 012345678905

Пример 2: =("1954-12-12") отображается как 1954-12-12, а не 12.12.1954.

Привет у меня та же проблема,

Я пишу этот vbscipt для создания другого файла CSV. Новый CSV-файл будет содержать шрифт в каждом поле, поэтому Excel будет понимать его как текст.

Таким образом, вы создаете файл.vbs с кодом ниже (например, Modify_CSV.vbs), сохраняете и закрываете его. Перетащите исходный файл в файл VBScript. Это создаст новый файл с "SPACE_ADDED" для имени файла в том же месте.

Set objArgs = WScript.Arguments

Set objFso = createobject("scripting.filesystemobject")

dim objTextFile
dim arrStr ' an array to hold the text content
dim sLine  ' holding text to write to new file

'Looping through all dropped file
For t = 0 to objArgs.Count - 1
    ' Input Path
    inPath = objFso.GetFile(wscript.arguments.item(t))

    ' OutPut Path
    outPath = replace(inPath, objFso.GetFileName(inPath), left(objFso.GetFileName(inPath), InStrRev(objFso.GetFileName(inPath),".") - 1) & "_SPACE_ADDED.csv")

    ' Read the file
    set objTextFile = objFso.OpenTextFile(inPath)


    'Now Creating the file can overwrite exiting file
    set aNewFile = objFso.CreateTextFile(outPath, True) 
    aNewFile.Close  

    'Open the file to appending data
    set aNewFile = objFso.OpenTextFile(outPath, 8) '2=Open for writing 8 for appending

    ' Reading data and writing it to new file
    Do while NOT objTextFile.AtEndOfStream
        arrStr = split(objTextFile.ReadLine,",")

        sLine = ""  'Clear previous data

        For i=lbound(arrStr) to ubound(arrStr)
            sLine = sLine + " " + arrStr(i) + ","
        Next

        'Writing data to new file
        aNewFile.WriteLine left(sLine, len(sLine)-1) 'Get rid of that extra comma from the loop


    Loop

    'Closing new file
    aNewFile.Close  

Next ' This is for next file

set aNewFile=nothing
set objFso = nothing
set objArgs = nothing

Это не Excel. Windows распознает формулу, данные как дату и автокоррекцию. Вы должны изменить настройки Windows.

"Панель управления" (-> "Переключиться на классический вид") -> "Региональные и языковые параметры" -> вкладка "Региональные параметры" -> "Настроить..." -> вкладка "Числа" -> А затем изменить символы в соответствии с тем, что вы хотите.

http://www.pcreview.co.uk/forums/enable-disable-auto-convert-number-date-t3791902.html

Он будет работать на вашем компьютере, если эти настройки не будут изменены, например, на компьютере ваших клиентов они будут видеть даты вместо данных.

В моем случае "Sept8" в CSV-файле, созданном с использованием R, был преобразован в "8-Sept" в Excel 2013. Проблема была решена с помощью функции write.xlsx2() в пакете xlsx для генерации выходного файла в формате xlsx, который может быть загружен в Excel без нежелательного преобразования. Итак, если вам дан файл csv, вы можете попробовать загрузить его в R и преобразовать его в xlsx, используя функцию write.xlsx2().

Без изменения вашего CSV-файла вы можете:

  1. Измените параметр "Формат ячеек Excel" на "текст"
  2. Затем с помощью "мастера импорта текста", чтобы определить ячейки CSV.
  3. После импорта удалите эти данные
  4. затем просто вставьте как обычный текст

Excel будет правильно форматировать и отделять ваши ячейки CSV в текстовом формате, игнорируя автоматические форматы даты.

Вроде бы глупо обходить, но это лучше, чем модифицировать данные csv перед импортом. Энди Бэйрд и Ричард вроде как ускользнули от этого метода, но пропустили пару важных шагов.

Я знаю, что это старая тема. Для тех, кто, как я, у которых все еще есть эта проблема при использовании Office 2013 через com-объект powershell, можно использовать метод opentext. Проблема в том, что этот метод имеет много аргументов, которые иногда взаимоисключающие. Чтобы решить эту проблему, вы можете использовать метод invoke-namedparameter, представленный в этом посте. Примером будет

$ex = New-Object -com "Excel.Application"
$ex.visible = $true
$csv = "path\to\your\csv.csv"
Invoke-NamedParameter ($ex.workbooks) "opentext" @{"filename"=$csv; "Semicolon"= $true}

К сожалению, я только что обнаружил, что этот метод каким-то образом прерывает синтаксический анализ CSV, когда ячейки содержат разрывы строк. Это поддерживается csv, но реализация microsofts кажется ошибочной. Также он как-то не обнаружил специфических немецких символов. Придание ему правильной культуры не изменило этого поведения. Все файлы (csv и script) сохраняются в кодировке utf8. Сначала я написал следующий код для вставки CSV ячейка за ячейкой.

$ex = New-Object -com "Excel.Application"
$ex.visible = $true;
$csv = "path\to\your\csv.csv";
$ex.workbooks.add();
$ex.activeWorkbook.activeSheet.Cells.NumberFormat = "@";
$data = import-csv $csv -encoding utf8 -delimiter ";"; 
$row = 1; 
$data | %{ $obj = $_; $col = 1; $_.psobject.properties.Name |%{if($row -eq1){$ex.ActiveWorkbook.activeSheet.Cells.item($row,$col).Value2= $_ };$ex.ActiveWorkbook.activeSheet.Cells.item($row+1,$col).Value2 =$obj.$_; $col++ }; $row++;}

Но это очень медленно, поэтому я искал альтернативу. Судя по всему, Excel позволяет устанавливать значения диапазона ячеек с матрицей. Таким образом, я использовал алгоритм в этом блоге, чтобы преобразовать CSV в мульти-массив.

function csvToExcel($csv,$delimiter){
     $a = New-Object -com "Excel.Application"
     $a.visible = $true

    $a.workbooks.add()
     $a.activeWorkbook.activeSheet.Cells.NumberFormat = "@"
     $data = import-csv -delimiter $delimiter $csv; 
     $array = ($data |ConvertTo-MultiArray).Value
     $starta = [int][char]'a' - 1
     if ($array.GetLength(1) -gt 26) {
         $col = [char]([int][math]::Floor($array.GetLength(1)/26) + $starta) + [char](($array.GetLength(1)%26) + $Starta)
     } else {
         $col = [char]($array.GetLength(1) + $starta)
     }
     $range = $a.activeWorkbook.activeSheet.Range("a1:"+$col+""+$array.GetLength(0))
     $range.value2 = $array;
     $range.Columns.AutoFit();
     $range.Rows.AutoFit();
     $range.Cells.HorizontalAlignment = -4131
     $range.Cells.VerticalAlignment = -4160
}

 function ConvertTo-MultiArray {
     param(
         [Parameter(Mandatory=$true, Position=1, ValueFromPipeline=$true)]
         [PSObject[]]$InputObject
     )
     BEGIN {
         $objects = @()
         [ref]$array = [ref]$null
     }
     Process {
         $objects += $InputObject
     }
     END {
         $properties = $objects[0].psobject.properties |%{$_.name}
         $array.Value = New-Object 'object[,]' ($objects.Count+1),$properties.count
         # i = row and j = column
         $j = 0
         $properties |%{
             $array.Value[0,$j] = $_.tostring()
             $j++
         }
         $i = 1
         $objects |% {
             $item = $_
             $j = 0
             $properties | % {
                 if ($item.($_) -eq $null) {
                     $array.value[$i,$j] = ""
                 }
                 else {
                     $array.value[$i,$j] = $item.($_).tostring()
                 }
                 $j++
             }
             $i++
         }
         $array
     } 
} 
csvToExcel "storage_stats.csv" ";"

Вы можете использовать приведенный выше код, так как он должен конвертировать любые CSV-файлы в Excel. Просто измените путь к CSV и символу разделителя внизу.

Я делаю это для номеров кредитных карт, которые постоянно преобразуются в научные обозначения: в итоге я импортирую свой.csv в Google Sheets. Параметры импорта теперь позволяют отключить автоматическое форматирование числовых значений. Я установил для любых чувствительных столбцов обычный текст и загрузил как xlsx.

Это ужасный рабочий процесс, но, по крайней мере, мои ценности остались такими, какими они должны быть.

Обходной путь с помощью Google Drive (или Numbers, если вы на Mac):

  1. Откройте данные в Excel
  2. Установите формат столбца с неверными данными в Текст (Формат> Ячейки> Число> Текст)
  3. Загрузите файл.csv в Google Диск и откройте его с помощью Google Sheets
  4. Скопируйте оскорбительный столбец
  5. Вставить столбец в Excel как текст ("Правка"> "Специальная вставка"> "Текст")

Кроме того, если вы находитесь на Mac для шага 3, вы можете открыть данные в Numbers.

Вставить таблицу в слово. Выполните поиск / замену и измените все - (тире) на - (двойной тире). Скопируйте и вставьте в Excel. Можно сделать то же самое для других символов (/) и т. Д. Если вам нужно изменить один раз на тире один раз в Excel, просто отформатируйте столбец в текст, а затем внесите изменения. Надеюсь это поможет.

Если кто-то все еще ищет ответ, строка ниже отлично сработала для меня

Я вошел =("my_value").
т.е. =("04SEP2009") отображается как 04SEP2009 не как 09/04/2009

То же самое работает для целых чисел более 15 цифр. Их больше не подстригали.

(EXCEL 2016 и позже, на самом деле я не пробовал в старых версиях)

  1. Открыть новую пустую страницу
  2. Перейти на вкладку "Данные"
  3. Нажмите "Из текста /CSV" и выберите ваш CSV-файл
  4. Проверьте в предварительном просмотре, правильны ли ваши данные.
  5. В случае, когда какой-либо столбец конвертируется в дату, нажмите "изменить", а затем выберите тип текста, нажав на календарь в заголовке столбца.
  6. Нажмите "Закрыть и загрузить"

ПРОСТОЕ РЕШЕНИЕ Я только что понял это сегодня.

  • Открыть в Word
  • Заменить все дефисы с дефисом
  • Сохрани и закрой
  • Открыть в Excel

Как только вы закончите редактирование, вы всегда можете снова открыть его в Word, чтобы снова заменить дефисы на дефисы.

Если вы можете изменить данные источника файла

Если вы готовы изменить исходный исходный файл CSV, другой вариант - изменить `` разделитель '' в данных, поэтому, если ваши данные - 4/11 (или 4-11), и Excel преобразует это в 4/11 / 2021 (Великобритания или 11-4-2021 США), то изменение символа '/' или '-' на что-то другое помешает преобразованию даты в Excel без предварительного уведомления. Возможные варианты:

  • Тильда ('~')
  • Плюс ('+')
  • Подчеркивать ('_')
  • Двойное тире ('-')
  • Короткое тире (Alt 150)
  • Em-dash (Alt 151)
  • (Другой персонаж!)

Примечание: переход на Unicode или другие символы, отличные от ascii / ansi, может усложнить ситуацию, если файл будет использоваться в другом месте.

Таким образом, преобразование «4-11» в «4~11» с тильдой НЕ будет рассматриваться как дата!

Для больших файлов CSV это не имеет дополнительных накладных расходов (например, лишние кавычки / пробелы / табуляции / конструкции формул) и просто работает, когда файл открывается напрямую (например, двойной щелчок по CSV для открытия) и позволяет избежать предварительного форматирования столбцов как текст или "импорт" файла CSV в виде текста.

При необходимости поиск / замена в Блокноте (или аналогичном инструменте) может легко преобразовать в / из альтернативного разделителя.

Импортировать исходные данные

В более новых версиях Excel вы можете импортировать данные (указаны в других ответах). В более старых версиях Excel вы можете установить надстройку Power Query. Этот инструмент также может импортировать CSV без преобразования. Выберите: вкладка Power Query / Из файла / Из текста-CSV, затем «Загрузить», чтобы открыть в виде таблицы. (Вы можете выбрать «не определять типы данных» из опций «определение типа данных»).

Эта проблема все еще присутствует в Mac Office 2011 и Office 2013, я не могу предотвратить это. Это кажется такой простой вещью.

В моем случае у меня были значения, такие как "1 - 2" и "7 - 12" в CSV, правильно заключенные в кавычки, это автоматически преобразует дату в Excel, если вы попытаетесь впоследствии преобразовать ее в простой текст, который вы получите числовое представление даты, такое как 43768. Кроме того, оно переформатирует большие числа, найденные в штрих-кодах и числах EAN, в числа 123E+, которые невозможно преобразовать обратно.

Я обнаружил, что Google Диски Google Диска не конвертируют числа в даты. Штрих-коды содержат запятые каждые 3 символа, но их легко удалить. Он очень хорошо справляется с CSV, особенно когда имеешь дело с CSV для MAC / Windows.

Может спасти кого-нибудь когда-нибудь.

Хорошо, я нашел простой способ сделать это в Excel 2003 - 2007. Откройте пустую книгу xls. Затем перейдите в меню "Данные", импортируйте внешние данные. Выберите ваш CSV-файл. Пройдите через мастера и затем в "формате данных столбца" выберите любой столбец, который нужно принудительно "текст". Это приведет к тому, что весь столбец будет импортирован как текстовый формат, что помешает Excel попытаться обработать любые определенные ячейки как дату

Другие вопросы по тегам