2

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

Cell A1

I need to eat to live.
I live to eat.
I love to eat and live.

Я надеюсь, что мое объяснение имеет смысл :)

Спасибо.

2 ответа2

3

Создайте вспомогательный столбец и используйте приведенную ниже формулу в верхней строке:

=TRIM(LEFT(A1,FIND(CHAR(10),A1)))

Затем перетащите это вниз на весь столбец.

Скопируйте весь вспомогательный столбец и вставьте значения. Затем вы можете удалить столбец А.

Это работает, находя CHAR(10) , который является первым разрывом строки, затем берет все слева от этого.

Оставляя вас только с первой строки из каждой ячейки.

1
Selection.TextToColumns Destination:=Selection, _
                        DataType:=xlDelimited, _
                        Other:=True, _
                        OtherChar:= Chr(10), _
                        FieldInfo:=Array(Array(1, 1), _
                                         Array(2, 9), _
                                         Array(3, 9))

ОБНОВИТЬ

Немного больше информации будет полезно

Создать новые макросы (редактор VBA - Добавить модуль - создать подпрограмму с некоторым именем или Макросы - ввести какое-то имя - Создать, затем вставить этот код в тело макроса). Затем выберите ячейку, столбец или диапазон, содержащий только 1 столбец, с ячейками, для которых требуется усечение выше, и запустите созданный макрос.

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

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

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