Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Перевод в строку текста результат команды СЦЕПИТЬ - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Перевод в строку текста результат команды СЦЕПИТЬ (Формулы/Formulas)
Перевод в строку текста результат команды СЦЕПИТЬ
alex_tm Дата: Вторник, 01.09.2015, 11:51 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 32
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Во вложении пример результата работы команды СЦЕПИТЬ. Она в нужной мне ячейке (Р15) создаёт правильную текстовую последовательность, которая в последующем должна использоваться для переноса в другую программу. При переносе в другую программу копируется не её значение, а только формула, и чтобы всё сработало правильно нужно копировать ячейку, использовать специальную вставку значения формулы, например в ячейку (Р16), и уже из неё сделать перенос текстовой строки в другую программу. Это неудобно, т.к. данных в таблице будет много и они будут часто динамически меняться. Можно ли автоматизировать процесс перевода результата работы формулы в его значение? Спасибо
К сообщению приложен файл: FORMULA.xlsx (9.8 Kb)


Сообщение отредактировал alex_tm - Вторник, 01.09.2015, 11:55
 
Ответить
СообщениеВо вложении пример результата работы команды СЦЕПИТЬ. Она в нужной мне ячейке (Р15) создаёт правильную текстовую последовательность, которая в последующем должна использоваться для переноса в другую программу. При переносе в другую программу копируется не её значение, а только формула, и чтобы всё сработало правильно нужно копировать ячейку, использовать специальную вставку значения формулы, например в ячейку (Р16), и уже из неё сделать перенос текстовой строки в другую программу. Это неудобно, т.к. данных в таблице будет много и они будут часто динамически меняться. Можно ли автоматизировать процесс перевода результата работы формулы в его значение? Спасибо

Автор - alex_tm
Дата добавления - 01.09.2015 в 11:51
Manyasha Дата: Вторник, 01.09.2015, 12:02 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Предлагаю вариант с макросом.
Повесила его на клавиши ctrl+shift+Z
Переводит формулы выделенного диапазона в значения.
[vba]
Код
Sub ValueFromFormula()
     Application.ScreenUpdating = False
     Dim rRng As Range, rArea As Range
     i = 1
     If Selection.Count = 1 Then
         Set rRng = ActiveCell
     Else
         Set rRng = Selection.SpecialCells(12)
     End If
     For Each rArea In rRng.Areas
         rArea.Value = rArea.Value
         i = i + 1
     Next rArea
     Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: FORMULA.xlsm (16.2 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеПредлагаю вариант с макросом.
Повесила его на клавиши ctrl+shift+Z
Переводит формулы выделенного диапазона в значения.
[vba]
Код
Sub ValueFromFormula()
     Application.ScreenUpdating = False
     Dim rRng As Range, rArea As Range
     i = 1
     If Selection.Count = 1 Then
         Set rRng = ActiveCell
     Else
         Set rRng = Selection.SpecialCells(12)
     End If
     For Each rArea In rRng.Areas
         rArea.Value = rArea.Value
         i = i + 1
     Next rArea
     Application.ScreenUpdating = True
End Sub
[/vba]

Автор - Manyasha
Дата добавления - 01.09.2015 в 12:02
alex_tm Дата: Вторник, 01.09.2015, 12:24 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 32
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Manyasha! Спасибо за быстрый ответ!
Макрос работает, но он забивает своим результатом строку с формулой, которая ещё будет нужна для работы в последующем. К тому же, в примере только одна строка, а на самом деле - таблица будет намного больше и данных в ней тоже будет много. Я готов потратить время на выделение нужной ячейки, нажатие комбинации клавиш, которая переведёт значение в нужный мне текстовый формат, но уже после нескольких десятков таких манипуляций (а их может быть сотни) процесс окажется слишком утомительным. Может быть есть что-то более автоматизированное? Спасибо.
 
Ответить
СообщениеManyasha! Спасибо за быстрый ответ!
Макрос работает, но он забивает своим результатом строку с формулой, которая ещё будет нужна для работы в последующем. К тому же, в примере только одна строка, а на самом деле - таблица будет намного больше и данных в ней тоже будет много. Я готов потратить время на выделение нужной ячейки, нажатие комбинации клавиш, которая переведёт значение в нужный мне текстовый формат, но уже после нескольких десятков таких манипуляций (а их может быть сотни) процесс окажется слишком утомительным. Может быть есть что-то более автоматизированное? Спасибо.

Автор - alex_tm
Дата добавления - 01.09.2015 в 12:24
Manyasha Дата: Вторник, 01.09.2015, 12:32 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
alex_tm,
выделение нужной ячейки

читайте внимательней:
Переводит формулы выделенного диапазона


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеalex_tm,
выделение нужной ячейки

читайте внимательней:
Переводит формулы выделенного диапазона

Автор - Manyasha
Дата добавления - 01.09.2015 в 12:32
alex_tm Дата: Вторник, 01.09.2015, 12:35 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 32
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, нет необходимости сохранять файл в какой-то другой формат.
 
Ответить
Сообщение_Boroda_, нет необходимости сохранять файл в какой-то другой формат.

Автор - alex_tm
Дата добавления - 01.09.2015 в 12:35
alex_tm Дата: Вторник, 01.09.2015, 12:49 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 32
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Manyasha, Вы правы - я был не внимателен! Ваш совет полностью меня устраивает! Спасибо за помощь!
 
Ответить
СообщениеManyasha, Вы правы - я был не внимателен! Ваш совет полностью меня устраивает! Спасибо за помощь!

Автор - alex_tm
Дата добавления - 01.09.2015 в 12:49
Manyasha Дата: Вторник, 01.09.2015, 13:26 | Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
alex_tm,
забивает своим результатом строку с формулой

еще вариант:
[vba]
Код
Sub ValueFromFormula()
     Application.ScreenUpdating = False
     Dim rRng As Range
     'копируем вправо
     Selection.Offset(0, Selection.Columns.Count + 2).Value = Selection.Value
     'копируем вниз
     'Selection.Offset(Selection.Rows.Count+2).Value = Selection.Value
     Application.ScreenUpdating = True
End Sub
[/vba]
Работает только на смежных диапазонах, в отличие от предыдущего макроса, копирует значения со сдвигом на 2 ячейки вправо (или вниз - под комментами)

[p.s.]Кстати, i=1, i=i+1 в предыдущем макросе можно убрать, они остались от каких-то переделок[/p.s.]


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеalex_tm,
забивает своим результатом строку с формулой

еще вариант:
[vba]
Код
Sub ValueFromFormula()
     Application.ScreenUpdating = False
     Dim rRng As Range
     'копируем вправо
     Selection.Offset(0, Selection.Columns.Count + 2).Value = Selection.Value
     'копируем вниз
     'Selection.Offset(Selection.Rows.Count+2).Value = Selection.Value
     Application.ScreenUpdating = True
End Sub
[/vba]
Работает только на смежных диапазонах, в отличие от предыдущего макроса, копирует значения со сдвигом на 2 ячейки вправо (или вниз - под комментами)

[p.s.]Кстати, i=1, i=i+1 в предыдущем макросе можно убрать, они остались от каких-то переделок[/p.s.]

Автор - Manyasha
Дата добавления - 01.09.2015 в 13:26
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Перевод в строку текста результат команды СЦЕПИТЬ (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!