Можете ли вы создавать приложения в Excel? - PullRequest
1 голос
/ 08 сентября 2010

Мой друг сказал, что собирается создать приложение в Excel. Я сказал ему, что, возможно, он имел в виду макросы, но он был убежден, что может создать типичное приложение CRUD ВНУТРИ Excel.

Это правда?

Ответы [ 5 ]

5 голосов
/ 08 сентября 2010

Вы оба правы. Вы можете использовать VBA внутри Excel и некоторые функциональные возможности форм для создания полнофункционального процесса CRUD с пользовательским интерфейсом внутри Excel, и вы можете сохранить эти данные в своей книге или в другой области хранения (текст, XML, Access, другая СУБД). Это не будет полное приложение само по себе, поскольку оно ограничено работой внутри приложения Excel, но это будет нечто большее, чем простой макрос «выполняйте эти предварительно определенные шаги по порядку. "

1 голос
/ 08 сентября 2010

Конечно.Зачем вам это нужно?

Краткий ответ: с помощью VBA вы можете создавать фоновые рабочие методы, которые могут взаимодействовать с другими приложениями Office или с помощью кода .NET / COM.Однако, если вы хотите добавить сложную бизнес-логику к уровню представления Excel, моей первой мыслью будет создание приложения на C # и использование оболочек .NET Framework для взаимодействия Office.Первое преимущество заключается в том, что вы используете Excel SOLELY для презентации, поддерживая дизайн программного обеспечения MVC.Во-вторых, вы храните код там, где ожидаете его найти;в коде, не встроенном в документ.

0 голосов
/ 09 сентября 2010

Вы можете использовать Excel / VBA, потому что:

  1. У вас есть VBA - полностью загруженный язык программирования (хотя OO требует работы).
  2. Скалярные функции перегружены вработа с массивами.
  3. Приличная среда IDE и средства отладки.
  4. Excel предоставляет богатую управляемую событиями платформу и расширяет возможности VBA с помощью поведения электронных таблиц, которое «просто происходит», но потребует большого количества кодированияна обычном языке.
  5. Виджеты форм, которые можно размещать где угодно, а не только на форме.
  6. Простая, но адекватная векторная графика.
  7. Графики, диаграммы и другие диаграммы--all динамический.
  8. Автоматическое сохранение или, если это необходимо, интерфейсы практически для каждого файла и носителя базы данных, включая XML и облачные сервисы.
  9. Реляционные таблицы являются собственной структурой.

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

0 голосов
/ 08 сентября 2010

Это правда.VBA может вызывать COM, который может делать довольно мощные вещи.Я использовал файл Excel для получения отчетов, созданных макросом внутри, который ищет во многих удаленных базах данных для группировки и агрегирования информации.Вы можете изменять реестр, запускать программы, перезагружать компьютер, показывать сообщения, создавать и редактировать файлы, использовать Word или Access, вызывать функциональность .NET.Все, что не требует сложной визуализации чего-либо.

0 голосов
/ 08 сентября 2010

Конечно, вы можете .... использовать VBA и заполнять ячейки данными из БД, когда ячейки изменяют значения, обновляют базу данных

Но с чего бы вам здесь больший вопрос

...