34

В Excel, 2010 или любой другой версии, возможно, если я введу в ячейку длинный однострочный текст, который длиннее ширины ячейки, Excel иногда отображает текст в соседних ячейках; иногда он обрезается на границе с соседней ячейкой справа.

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

Есть идеи? Спасибо.

13 ответов13

38

Для того, чтобы текст мог выходить за границы ячейки, должны выполняться следующие условия:

  • В ячейке не включен "Обтекание текстом"
  • Ячейка не является объединенной ячейкой
  • Ячейка содержит значение, которое превышает ширину ячейки
  • Соседняя ячейка пуста * и не объединена
  • Ячейка имеет любое из следующих горизонтальных выравниваний:

    • генеральный
    • Слева (отступ)
    • Центр
    • Право (отступ)
    • Центр по всему выбору
      (Справа перекрывает ячейку слева; центр перекрывается с обеих сторон.)
  • Содержимое ячейки не поворачивается (т.е. ориентация установлена на 0 °) (только в Excel 2010?)

  • Ячейка содержит текстовое значение. Числовые значения и значения даты преобразуются в #### или в научные обозначения вместо перекрытия соседних пустых ячеек.
  • На листе не включена функция "Показать формулы"

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

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

4

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

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

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

3

Помимо случаев, отмеченных в других ответах, следует отметить, что Excel всегда будет обрезать переполнение текста, если на листе активна опция "Показать формулы" (Ctrl + `). Если вы регулярно используете Ctrl + 1 для доступа к диалоговому окну "Формат ячеек", очень легко случайно активировать "Показать формулы", и вы можете не заметить, что это произошло. Это особенно верно, если у вас нет активных формул на активном листе.

1

Я так счастлив, что нашел средство правовой защиты! В течение некоторого времени я научился жить с этим. Текст из одного столбца не попадет в следующий столбец ... будет обрезан. Я попытался "очистить все" среди многих других вариантов. В заключение...Формат - Ячейки - и снят флажок Объединить ячейки. Кажется, теперь так просто.

1

Он попадет в следующую ячейку, если рядом с ней нет какого-либо содержимого (т. Е. Столбец A, столбец B).

Если вы удалите содержимое в столбце B, содержимое в столбце A больше не будет переполнено. Если вы вернетесь к столбцу B и выполните «очистку содержимого», то A снова пройдет через размер ячейки.

1

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

1

Я не рекомендую использовать clear all (если вы не хотите потерять свою работу!). Excel (по крайней мере, 2013 г. - не уверен насчет более ранних версий - хотя я почти уверен, что 2000 г. не действовал таким образом) распознает пустую строку (то есть "") в качестве значения и так, даже если у вас есть "пустая" соседняя ячейка Ваши данные не будут переполнены в этой ячейке.

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

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

0

Щелкните по соответствующей ячейке и отключите "перенос текста". В Excel 2013 это находится на вкладке "Главная" примерно на полпути по экрану.

0

У меня была та же проблема, и некоторые из приведенных выше решений не сработают, если соответствующая ячейка содержит формулу.

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

Надеется, что это помогает.

0

Перед вводом текста измените формат ячеек на текст. Это, кажется, позволяет тексту переходить в следующую ячейку (пока следующая ячейка пуста).

Это не работает, если вы пытаетесь изменить формат после ввода текста.

Дейв

0

У меня был особый случай, когда текст поступал в следующую ячейку, но я не мог его увидеть.

В моем первом использовании у меня был текст, который занимал две ячейки. Я выделил обе ячейки и сделал фон красным, а текст белым. Позже я скопировал только первую ячейку и вставил ее в другой лист. Белым по красному текст показывается только в первой ячейке.

Белый текст переносился в следующую ячейку, но не на фон, поэтому он был невидим на белом фоне по умолчанию.

Выделив вторую ячейку и покрасив ее в красный цвет, проблема решена

0

Это расстраивает меня, и вот чем я занимаюсь. все приведенные выше ответы являются хорошими, и текст будет навязываться только в следующей ячейке, если в ячейке нет данных, поэтому я делаю следующее: выберите столбец, с которым хотите работать, и на вкладке "Главная" выберите "Найти и выбрать" выберите Заменить. В поле "Найти что" оставьте поле пустым, а в поле "Заменить на" укажите точку или пробел и используйте пункт "Заменить все" внизу. Это поместит что-то в пустые поля и остановит вторжение данных из поля перед ним.

-1

Данные будут переполнены, только если столбец справа будет пустым. Итак, отфильтруйте и выберите (Пробелы). Выберите первую ячейку в верхней части столбца и введите пробел. Скопируйте и вставьте первую ячейку в конец столбца. Очистите фильтр, и вы увидите, что данные переполнения исчезли.

Вуаля ..

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