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

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

а зачем вообще копировать текст из одного в другое? Почему не скопировать сразу весь текстбокс?
...
Рейтинг: 0 / 0
Копирование формулы в Excel
    #39078112
Sergey_New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist,
законный вопрос.
Но мне нужно, в зависимости от условий, в одно и то же место подставлять разные формулы. Путей решения несколько:
- поместить несколько формул и сделать их невидимыми, а потом показывать;
- удалять ненужный текстбокс и копировать требуемый.
То что я хочу, казалось самым простым решением, но облом...
...
Рейтинг: 0 / 0
Копирование формулы в Excel
    #39078133
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey_NewКазанский,
Сравните с изображением из стартового сообщения - там профессиональный.А почему Вы не приложили файл с такой формулой?
В моем сообщении 18284780 я показал, как выглядит ваш файл у меня (в 2007) и результат копирования в новый текстбокс.
...
Рейтинг: 0 / 0
Копирование формулы в Excel
    #39078138
Sergey_New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Казанский,
приложил именно с такой формулой. Скорее всего у меня 2010 офис, а у Вас 2007?
...
Рейтинг: 0 / 0
Копирование формулы в Excel
    #39078139
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей, в 2010 действительно не работает приведенный тобой код. Видимо, отображение само меняется на строчный тип. Свойство нужное не искал - времени нет сейчас с этим ковыряться, поэтому не знаю насколько возможно это сделать из VBA.
...
Рейтинг: 0 / 0
Копирование формулы в Excel
    #39078328
Sergey_New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пришлось сделать так, может кому сготится:
Формулу "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
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Копирование формулы в Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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