Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Копирование формулы в Excel / 13 сообщений из 13, страница 1 из 1
15.10.2015, 19:07
    #39078024
Sergey_New
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Как можно программно скопировать формулу (приложена), размещенную в TextBox в другой TextBox?
Если ручками выделить содержимое формулы, скопировать и вставить в другой TextBox, то всё ОК.
Записываю процедуру в макрос, выполняю его - в результате получаю текстовый вид формулы, а не профессиональный, как при ручном методе.
...
Рейтинг: 0 / 0
15.10.2015, 19:13
    #39078026
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Sergey_New,
приложите файл с текстбоксом с формулой.
...
Рейтинг: 0 / 0
15.10.2015, 19:29
    #39078032
Sergey_New
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Казанский,
не вопрос, прикладываю
...
Рейтинг: 0 / 0
15.10.2015, 20:04
    #39078051
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Sergey_New,

Код: vbnet
1.
2.
3.
4.
With ActiveSheet.TextBoxes(2)
  .Text = ActiveSheet.TextBoxes(1).Text
  .Font.Name = "Cambria Math"
End With
...
Рейтинг: 0 / 0
15.10.2015, 20:08
    #39078053
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Насчет "профессионального вида" не понял.
...
Рейтинг: 0 / 0
15.10.2015, 20:28
    #39078061
Sergey_New
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Казанский,
Сравните с изображением из стартового сообщения - там профессиональный. Так, во всяком случае, в Excel написано.
Вставляю формулу так: Меню > Вставка > Формула > выбираем подходящую и правим, как требуется.
...
Рейтинг: 0 / 0
15.10.2015, 20:46
    #39078072
Sergey_New
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
По приведённому коду у меня преобразуется вообще неверно:
...
Рейтинг: 0 / 0
15.10.2015, 21:36
    #39078103
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Sergey_New,

а зачем вообще копировать текст из одного в другое? Почему не скопировать сразу весь текстбокс?
...
Рейтинг: 0 / 0
15.10.2015, 21:46
    #39078112
Sergey_New
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
The_Prist,
законный вопрос.
Но мне нужно, в зависимости от условий, в одно и то же место подставлять разные формулы. Путей решения несколько:
- поместить несколько формул и сделать их невидимыми, а потом показывать;
- удалять ненужный текстбокс и копировать требуемый.
То что я хочу, казалось самым простым решением, но облом...
...
Рейтинг: 0 / 0
15.10.2015, 22:25
    #39078133
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Sergey_NewКазанский,
Сравните с изображением из стартового сообщения - там профессиональный.А почему Вы не приложили файл с такой формулой?
В моем сообщении 18284780 я показал, как выглядит ваш файл у меня (в 2007) и результат копирования в новый текстбокс.
...
Рейтинг: 0 / 0
15.10.2015, 22:35
    #39078138
Sergey_New
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Казанский,
приложил именно с такой формулой. Скорее всего у меня 2010 офис, а у Вас 2007?
...
Рейтинг: 0 / 0
15.10.2015, 22:45
    #39078139
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Алексей, в 2010 действительно не работает приведенный тобой код. Видимо, отображение само меняется на строчный тип. Свойство нужное не искал - времени нет сейчас с этим ковыряться, поэтому не знаю насколько возможно это сделать из VBA.
...
Рейтинг: 0 / 0
16.10.2015, 10:18
    #39078328
Sergey_New
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование формулы в Excel
Пришлось сделать так, может кому сготится:
Формулу "TextBox1" копирую в нужное место, предварительно удаляя, если есть, старую копию

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Sub CopyShapes()
    For Each sh In ActiveSheet.Shapes
        If sh.Name = "tmp" Then
            sh.Delete
            Exit For
        End If
    Next
        ActiveSheet.Shapes.Range(Array("TextBox1")).Select
        Selection.Copy
        Range("A1").Select
        ActiveSheet.Paste
        Selection.Name = "tmp"
End Sub
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Копирование формулы в Excel / 13 сообщений из 13, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]