1

хочу конвертировать

311562 = '311562

я попытался с помощью этой формулы =CONCATENATE("'",B8) а затем я скопировал результат в блокнот

«311562

и затем вставил результат снова в Excel, но он не работает. Excel автоматически изменяет результат на 2 одинарные кавычки

'' 311562

Редактировать:

если я использую char(39), POI API добавляет цитату в данные, я этого не хочу. используя Char(7)

3 ответа3

2

Если у вас Excel 2013 или более поздняя версия, вы можете использовать Flash Fill.

Если ваши данные находятся в столбце A, приведите пример преобразованных данных в столбце B; то есть, если 311562 находится в A1, напишите '311562 в B1.

Как это:

Теперь нажмите CTRL+E или нажмите Home-> Fill-> Flash Fill.

1

Со значениями в столбце A, в B1 введите:

=CHAR(39) & A1

и скопировать вниз. Затем скопируйте столбец B и PasteSpecialValues обратно в столбец A.

EDIT # 1:

Лучшее, что вы можете сделать, это запустить этот короткий макрос VBA:

Sub ApplyTick()
    For Each r In Range("A:A").Cells.SpecialCells(2)
        r.Value = "'" & r.Value
    Next r
End Sub

Этот код применяет PrefixCharacter к каждой константе в столбце A.

EDIT # 2:

Макросы очень просты в установке и использовании:

  1. ALT-F11 открывает окно VBE
  2. ALT-I ALT-M открывает новый модуль
  3. вставьте материал и закройте окно VBE

Если вы сохраните книгу, макрос будет сохранен вместе с ней. Если вы используете версию Excel более поздней, чем в 2003 году, вы должны сохранить файл как .xlsm, а не .xlsx

Чтобы удалить макрос:

  1. откройте окно VBE, как указано выше
  2. очистить код
  3. закройте окно VBE

Чтобы использовать макрос из Excel:

  1. ALT-F8
  2. Выберите макрос
  3. Нажмите RUN

Чтобы узнать больше о макросах в целом, смотрите:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

а также

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

Макросы должны быть включены, чтобы это работало!

1

Я бы пошел по другому подходу здесь.

Сделайте выделение ячеек, которые вы хотите изменить, затем щелкните правой кнопкой мыши выделение и выберите « Format Cells . Измените форматирование ячейки с По умолчанию на Текст.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .