Почему все текстовые столбцы в электронной таблице Excel начинаются с одинарной кавычки?

11

Я пытаюсь импортировать в базу данных некоторые данные, отправленные нам в Excel, которыми я редко пользуюсь. Одиночная кавычка встречается как часть данных каждой ячейки, которая содержит текстовое значение:

    'PUBLIC, JOHN Q.

Когда я нажимаю на ячейку в Excel, поле редактирования в верхней части электронной таблицы справа от кнопок {X, check, Fx} также показывает первую одинарную кавычку. Таким образом, ведущая кавычка не вводится нашей утилитой импорта. Это в данных Excel.

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

mrblint
источник
Как вы импортируете данные в базу данных? Какое сопоставление установлено в базе данных? Обычно импорт Excel в базы данных требует тщательной настройки параметров сортировки. Используете ли вы не английский язык (снова сопоставление). Если нет, то возможно, что данные вводятся таким образом.
Атиф Шейх
1
Ведущий апостроф - это обычный способ сообщить Excel, что эта ячейка должна рассматриваться как текст (независимо от того, есть ли в ней число или формула). Это не артефакт. Они вставили его нарочно
nixda
ЛОЛ. Они использовали одинарную кавычку, где Excel никогда не будет пытаться преобразовать в число (с именами), но они не использовали его с кодами центра затрат с начальными нулями, например, 0100, где Excel изменит значение.
mrblint

Ответы:

8

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

Это может быть удалено:

  • Выбор ячеек
  • Затем меню Данные / Текст в столбцы

Вы, вероятно, можете написать макрос для автоматизации этого.

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

ДэвидПостилл
источник
Спасибо, но Arrrgh! здесь для Excel. Данные / текст в столбцы должны выполняться столбец за столбцом, по одному столбцу за раз.
mrblint
CSV, вероятно, займет меньше всего времени. Спасибо
mrblint
Лучший ответ в интернете! Столько модных и замысловатых предложений повсюду.
Джеймс
1

Вау, они изменили что-то в Excel 2013

Предложенный Microsoft способ удаления скрытых апострофов больше не работает в Excel 2013. Я почти уверен, что он работал в предыдущей версии.

Тем не менее, здесь есть обходной путь с использованием временной переменной

Sub removePrefix()
    For Each c In UsedRange
        If c.PrefixCharacter <> vbNullString Then
            temp = c.Text
            c.Clear
            c.Value = temp
        End If
    Next
End Sub
nixda
источник
ссылка сейчас не работает :(
phuclv