[Excel] Выделенный текст в ячейке
А откуда ты его хочешь получить? Из VBA?
Да, хочется из VBA...
Dim Result As String
Dim Rng As Range
For Each Rng In Selection.Cells
Result += Rng.Value
Next Rng
Или как там в vba строки склеиваются...
CStr(Selection.Value)
Value возвращает текст во всей ячейке, а мне надо только выделенную часть текста
Я так думаю, Excel не является редактором текста и поэтому желание управлять из VBA режимом редактирования содержимого ячейки кажется мне странным. Вне этого режима, понятие текста выделенного в ячейке не определено.
А ты из голого VBA делаешь, или через OLE Automation из какого-нить языка?
По-моему, я где-то уже встречал информацию, что из VBA нельзя поглядеть, что в буфере.
а там уже разбираться, что в буфере.
Одним VBA, видимо, не обойтись. Но о том, что такое OLE Automation у меня весьма туманные представления. (
А ты из голого VBA делаешь, или через OLE Automation из какого-нить языка?
И ещё у меня одна проблемка: как запустить код на VBA, пока я редактирую содержимое ячейки? По идее, в режиме редактирования доступны кнопки типа Save. Значит, и моя кнопка, к которой будет приписан некий макрос может быть доступной. Но фиг там.
Во время редактирования макросы прекращают работу и не запускаются. Можно, правда, обрабатывать событие cell.change.
По-моему, я где-то уже встречал информацию, что из VBA нельзя поглядеть, что в буфере.
Угу, точно...
я просто рассуждал с точки зрения когда из языка обращаешься...
а ты видимо просто макрос пишешь...
Оставить комментарий
a100258
Как можно программно получить значение выделенного текста в активной ячейке? У ListBox'oв и ComboBox'ов на этот случай есть свойство SelText, а для ячейки такого не нашёл.