Как стать автором
Обновить
10.67

Visual Basic for Applications *

Visual Basic для автоматизации в приложениях

Сначала показывать
Порог рейтинга
Уровень сложности

C# как замена VBA в Excel

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров13K
Я довольно много пишу на C#, и это мне нравится. Время от времени мне хочется, чтобы можно было использовать C# внутри других приложений.

Думаю, одним из таких приложений, в которых хорошо приживётся C#, был бы Excel, этим языком можно было бы заменить VBA. Язык VBA уже немного отстаёт от времени, а Microsoft не планирует его апгрейдить. Вместо него — компания предлагает среду-песочницу для JavaScript под названием Office Scripts.

Я понимаю привлекательность JavaScript для веб-версии Excel, но не в качестве хорошей замены VBA.

Так как этим не собирается заниматься Microsoft, я решил, что могу попробовать сам. В конце концов, если Microsoft так увлечена JavaScript, маловероятно, что она выдавит меня с обширного рынка использования C# в Excel.

Итак, вот что я создал:

QueryStorm IDE, выполняющая запрос LINQ для таблицы Excel

«Это что, IDE языка C#, выполняющая запросы LINQ для таблиц Excel?» Именно. Всё так и есть.

Я назвал это QueryStorm. Моя работа над этим проектом началась ещё в 2014 году. Изначально у него имелась только поддержка SQL, и с тех пор я продолжал над ним работать, постепенно добавляя поддержку скриптинга на C#, пользовательских функций C#/Excel, поддержку NuGet, отладчик и даже магазин приложений!
Читать дальше →
Всего голосов 88: ↑87 и ↓1+86
Комментарии22

Новости

Как я с помощью VBA оплатил себе университет

Время на прочтение5 мин
Количество просмотров51K

Большинство молодых людей, когда слышат про Excel, вспоминают сразу уроки информатики в школе или пары в универе, где нас учили выставлять ширину бортиков ячейки и как писать текст в ней по диагонали. Нам демонстрировали работу со статическими таблицами, учили их оформлять и форматировать. Но знаменитую цитату Моргана Фримана из фильма Люси: «Что, если бы мы использовали мозг на 100 процентов?» можно перефразировать на: «Что, если бы мы использовали Excel на 100 процентов?». Дело в том, что многие из вас даже не представляют на сколько это многогранная и сложная программа, функционал которой уходит далеко за пределы форматирования таблиц и подготовки простеньких графиков. Я тоже этого не представлял, пока это не стало моим основным источником заработка во время учебы в университете. И в своей статье я хочу рассказать вам про мой опыт работы с Excel и VBA, о том какие интересные вещи делают с его помощью некоторые фирмы и о том, как на этом можно неплохо подзаработать.

Читать далее
Всего голосов 70: ↑65 и ↓5+60
Комментарии201

3D-движок, написанный на формулах MS Excel

Время на прочтение9 мин
Количество просмотров115K

Скриншот экрана игры

Эта статья посвящена тому, как я смог написать 3D-движок только на формулах Excel. Я реализовал следующий функционал:

  • бесконечная процедурно генерируемая карта лабиринта
  • рендеринг трассировкой лучей в реальном времени
  • вычисление окклюзии
  • рендеринг простейшего освещения
  • шейдер освещения и вычислений
  • движок естественного движения
  • в 3D-движке не используются макросы

* чтобы управлять игрой нажатием клавиш, нужны макросы, управляющие движением с помощью одной простой инструкции копирования.

Можете скачать файл и протестировать его самостоятельно!
Всего голосов 229: ↑226 и ↓3+223
Комментарии101

Чем заняться айтишнику в армии — руководство к действию

Время на прочтение3 мин
Количество просмотров61K
Первая статья вызвала большой резонанс по всему рунету. Сейчас же я хочу немного рассказать про техническую сторону вопроса, а именно — о том, как начать разработку BomberMan в Excel. Исходного кода игры не будет в силу его отсутствия, а будут лишь отдельные пояснения принципов работы.

Методы, описанные в статье, не претендуют на истину в последней инстанции. Я описываю то, как это было сделано мной ТАМ, в местах отсутствия интернета и сильнейшего воздействия на психику.
Читать дальше →
Всего голосов 73: ↑68 и ↓5+63
Комментарии19

Истории

Рассказ о том, как я упростил себе службу в армии при помощи Excel и VBA

Время на прочтение5 мин
Количество просмотров117K
Навеяно постом «Чем заняться айтишнику в армии или как я на VBA игры писал»

imageВ 2004-2006 годах служил я в армии, а конкретнее — в ВВС. После прохождения курса молодого бойца и освоения в новой для меня обстановке мне доверили рабочее место с компьютером. (Надо сказать компьютер по тем временам был не плохой, чему я был рад.)

Определили меня на должность планшетиста командного пункта (КП, наш центральный КП на сколько я знаю, находился под землёй), на деле же я был непойми кем… но занимался обязанностями хронометражиста на Стартовом Командном Пункте (СКП).

Далее кратко, что из себя представляли «Полёты» (так назывался период проведения тренировок, перелетов или стрельб на полигонах) для меня, и как при помощи программирования я немного упростил себе службу в армии.
Читать дальше →
Всего голосов 160: ↑152 и ↓8+144
Комментарии66

Чем заняться айтишнику в армии или как я на VBA игры писал

Время на прочтение3 мин
Количество просмотров183K
Прошло уже больше двух месяцев с момента моей демобилизации. Я уже освоился на свободе, пришло время рассказать интересную историю со службы. Служил я в разведке!.. По распределению попал в центр радиоперехвата. Работенка не пыльная, сидишь ночами в наушниках и слушаешь врага. Но речь пойдет не об этом.

У каждого оператора поста радиоперехвата (таковыми мы числились) был в распоряжении компьютер с подключенными к нему радио-приемными устройствами. На компьютере стоял спецсофт + Excel. Все остальное было заблочено. После N-ного дежурства я стал скучать… Зачесались руки.
Читать дальше →
Всего голосов 282: ↑269 и ↓13+256
Комментарии155

50 лет Бейсику!*

Время на прочтение2 мин
Количество просмотров25K
Команда Visual Basic присоединяется к поздравлениям Дартмутского Колледжа и разработчикам по всему миру, чьи жизни затронул этот прекрасный язык, и хочет поздравить Dartmouth BASIC (и, конечно, всё семейство языков Бейсик) с пятидесятилетием!

В нашей команде управляемых языков программирования так много тех, кто начинал свой путь с того или иного диалекта Бейсика, что мы не могли не поностальгировать и не показать привязанность к нашим истокам. В честь 50-летия дедушки Бейсика мы представляем вам QuickVB.

QuickVB основан на платформе .NET-компиляторов Roslyn (доступна в виде Nuget-пакетов), которая была представлена на конференции BUILD в этом году. Чтобы начать работу, просто распакуйте архив QuickVB.zip (ссылка в конце поста) с проектом, затем соберите и запустите проект в Visual Studio 2013. Предварительные версии Roslyn ставить не надо, менеджер пакетов Nuget сам скачает все необходимые зависимости.

Запустив QuickVB, вы увидите среду которая немного похожа на QuickBasic.



Читать дальше →
Всего голосов 103: ↑90 и ↓13+77
Комментарии122

RPG-игра в рабочей книге Excel

Время на прочтение1 мин
Количество просмотров192K


Бухгалтер из Торонто по имени Кэри Уолкин (Cary Walkin) никогда не занимался разработкой компьютерных игр, но в совершенстве освоил Excel. Этого оказалось достаточно для создания RPG-игры, которая работает на макросах VBA, встроенного языка программирования Excel.
Читать дальше →
Всего голосов 133: ↑125 и ↓8+117
Комментарии58